Инструмент командной строки KeyChain Security работает с паролями find-internet-passwords, но не с find-generic-passwords - PullRequest
6 голосов
/ 29 ноября 2011

Рассматривая использование инструмента командной строки для KeyChain.Я могу многое сделать благодаря безопасности;перечисление моих нескольких цепочек для ключей, сброс их и установка значений по умолчанию.Читая руководства и другие публикации, я ожидаю найти мои пароли с

security find-generic-password test

Но я получаю

security: SecKeychainSearchCopyNext: указанный элемент не можетнаходится в цепочке для ключей.

Это не будет работать в моей цепочке для ключей по умолчанию или в login.keychain.Тем не менее, я могу найти свои пароли, перечисленные как «интернет» с помощью команды find-internet-password.Может кто-нибудь объяснить, почему или что я делаю не так?Сайты, которые я читал, это справочная страница и http://blog.macromates.com/2006/keychain-access-from-shell/,

1 Ответ

10 голосов
/ 29 ноября 2011

Общие пароли идентифицируются по их атрибутам Service и Account.Например, чтобы найти пароль для учетной записи «bar» службы «foo», используйте

security find-generic-password -a foo -s bar -g

. Параметр -g отображает значение пароля в конце вывода.

Комбинация услуги и учетной записи гарантирует уникальную идентификацию конкретного пароля.Возможны другие запросы (комментарий, метка и т. Д.), Но они могут совпадать с несколькими паролями.find-generic-password отображает только первый соответствующий элемент, что ограничивает его полезность для таких запросов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...