«/Users/vandadnp/Library/Keychains/login.keychain»
«/Library/Keychains/System.keychain»
Как видите, здесь у меня две связки ключей: регистрационная и системная. Чтобы выяснить, какая связка ключей используется по умолчанию, введите следующую команду в окно терминала, а затем нажмите Enter:
security default-keychain
В типичной установке OS X эта команда вернет примерно такой результат:
«/Users/vandadnp/Library/Keychains/login.keychain»
Вывод свидетельствует, что у меня на машине по умолчанию используется регистрационная связка ключей. Поэтому по умолчанию все пароли, которые я приказываю запомнить различным программам в системе OS X, будут сохраняться именно в этой связке ключей, если конкретное приложение не решит, что пароль должен быть сохранен в другой связке ключей. Если нужной связки ключей пока не существует, приложению потребуется ее создать.
А теперь давайте попробуем кое-что интересное. Попытаемся узнать, какие пароли уже сохранены в нашей стандартной связке ключей. При этом будем исходить из того, что по умолчанию на машине используется связка ключей login.keychain, как мы определили ранее. Введите в окне терминала следующую команду и нажмите Enter:
security dump-keychain login.keychain | grep «password» — i
Аргумент dump-keychain для команды security в окне терминала дампирует все содержимое связки ключей в стандартный вывод. Для поиска паролей мы применили команду grep. Вывод этой команды может получиться примерно таким, как в следующем примере, в зависимости от того, какие пароли запомнил ваш компьютер:
«desc»
«desc»
«desc»
«desc»
«desc»
«desc»
«desc»
«desc»
«desc»
«desc»
«desc»
«desc»
Хорошо, все это очень интересно, но зачем я об этом рассказываю, как все это связано с iOS? Оказывается, что в архитектурном отношении связка ключей в iOS
На компьютере Mac нажмите клавиши Command + Пробел или просто нажмите значок Spotlight (Поиск) на верхней панели меню на экране (рис. 8.1).
Рис. 8.1. Нажмите значок Spotlight на панели меню для OS X
Когда откроется строка поиска, введите в нее запрос Keychain Access и нажмите Enter, чтобы открыть программу Keychain Access. В левой части окна этой программы находится область Keychains (Связки ключей). В ней выберите регистрационную связку ключей login, а затем в области Category (Категория) слева — запись Passwords (Пароли). Теперь перед вами должен открыться примерно такой интерфейс, как на рис. 8.2.
Рис. 8.2. Программа Keychain Access в Mac OS X
Keychain Access — это программа с графическим пользовательским интерфейсом, которая выстроена в OS X на базе интерфейсов API для работы со связкой ключей и обеспечения безопасности. Этот красивый и удобный интерфейс скрывает большую часть тех сложностей, которыми отличаются фреймворки безопасности в OS X. Теперь, если в системе есть какие-либо пароли, сохраненные в приложениях, например в Safari, вам потребуется дважды щелкнуть на одной из записей-паролей в правой части экрана. Откроется такое диалоговое окно, как на рис. 8.3.
Рис. 8.3. Диалоговое окно Keychain Access, в котором отображается информация о сохраненном пароле
Познакомимся с некоторыми свойствами пароля, показанного на рис. 8.3.
• Name (Имя) — имя пароля, присвоенное ему приложением, сохранившим этот пароль. Так, в данном случае мы имеем дело с паролем для входа в беспроводную сеть 206-NET. Это имя иногда называют подписью.
• Kind (Вид) — вид элемента. В данном случае пароль относится к виду «пароль для беспроводных сетей». Это обычная строка, ее можно использовать для выполнения запросов к связке ключей (рассмотрено далее).