2010-08-18 3 views
2

У меня есть три секреты для хранения в цепочке ключей Mac OS. Currenly Я храню каждый из них в отдельной записи в виде связки ключей. Недостатком этого является то, что если мое приложение обновляется, пользователь видит три диалога «разрешить доступ», по одному для каждой записи. То, что я хотел бы сделать, это хранить все три секреты в одной записи в виде связки ключей. Один из этих секретов - это пароль, предоставленный пользователем.Несколько секретов в одной записи брелка для ключей

Каков стандартный метод для этого? Должен ли я просто втиснуть все данные в поле пароля (это означает, что один секрет, который является предоставленным пользователем паролем, не будет очень читаемым в KeychainAccess.app), или есть какой-то другой способ добавить несколько «паролей» (т. Е. зашифрованные поля) в одну запись в цепочке ключей?

+0

Почему бы вам не подписать заявку? [Это позволяет вам избавиться от диалогового окна подтверждения] (http://www.entropy.ch/blog/Developer/2008/02/11/Mac-OS-X-Application-Code-Signing.html) (возможно, устаревший link, хотя) –

+0

Это определенно в плане, но пока мы не подписываемся. – devguydavid

ответ

0

Я не думаю, что существует стандартный метод, но если ваши тайны достаточно короткие, вы можете придерживаться их в начале, например. «base64-encoded-secret-1 base64-encoded-secret-2 password», который легко разобрать (даже если пароль содержит пробелы) и означает, что пользователь может видеть пароль в Keychain Access, если это необходимо.

+0

Отличная идея. Благодаря! На самом деле это сводится к моим показаниям о том, что может быть способ поместить несколько секретов в одну запись в виде связки ключей, но каждый раз, когда я шел по этому пути, он просто не выходил из игры. – devguydavid

+0

Было бы неплохо, но похоже, что элементы keychain имеют только одно «значение», а значение - единственное, что хранится в секрете (см. «Security dump-keychain»). –

Смежные вопросы