2

Я хочу удалить связку ключей, хранящуюся в папке System.keychain на Mac. Я попробовал следующее,

security delete-keychain Keychain_name

но получил следующую ошибку:

Указанный брелок не найден

Как я могу удалить связку ключей? Когда это не сработало, я попытался указать путь, где хранится цепочка для ключей.

security delete-keychain Keychain_name /Library/Keychains/System.keychain

Но даже тогда я получаю то же сообщение об ошибке.

Я хочу удалить его при разработке приложений, часть информации хранится как таковая. Если я пытаюсь удалить один элемент, это дает вышеуказанную ошибку.

Тем не менее, когда я использовал следующую команду

sudo security delete-keychain /Library/Keychains/System.keychain 

он удалил весь System.keychain.

Где я ошибаюсь при удалении одного элемента из system.keychain?

1 ответ1

4

Давайте рассмотрим терминологию:

System.keychain и login.keychain являются связками ключей. Они содержат элементы цепочки для ключей, такие как элементы пароля и защищенные элементы заметок.


security delete-keychain удаляет всю цепочку для ключей. Вот о чем мой первый комментарий: вы обычно не хотите удалять цепочку ключей системы, включая все ее записи. Вы используете это, если вы создаете свои собственные цепочки для ключей для определенных целей.

security delete-keychain "/Users/danielbeck/Library/Keychains/Test.keychain"

Вместо этого используйте security delete-generic-password , security delete-internet-password или security delete-certificate зависимости от типа элемента, который вы хотите удалить.

Следующая команда удаляет элемент, например защищенную заметку с именем note из указанной цепочки ключей Test2.keychain:

security delete-generic-password -l note "/Users/danielbeck/Library/Keychains/Test2.keychain"

Информацию об опциях, позволяющих указать, какие элементы следует удалять, смотрите в разделе man security .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .