Когда приложение сохраняет элемент в цепочке для ключей, macOS добавляет это приложение в список контроля доступа, чтобы ваше приложение могло получить к нему доступ позже. Если вы попытаетесь получить доступ к этому элементу из другого приложения, macOS отобразит системное приглашение, спрашивающее пользователя, хотят ли они разрешить доступ. Это задокументировано здесь .
Имя приложения хочет использовать вашу конфиденциальную информацию, хранящуюся в "com.company.appname.key" в вашей цепочке для ключей. Чтобы разрешить это, введите пароль цепочки для ключей входа в систему.
Как macOS узнает, какие приложения имеют доступ? Это по идентификатору пакета, подписи сертификатов, расположению приложения на диске или как-то еще?
В нашем приложении мы неожиданно видим это приглашение, когда пытаемся получить доступ к записи, о которой известно только наше приложение, созданное таким образом. Я пытаюсь понять, почему macOS считает, что это другое приложение. Когда я просматриваю элемент в Keychain Access, он отображает имя нашего приложения, указанное в элементе управления доступом в разделе «Всегда разрешать доступ этим приложениям», но значок является общим файлом, и я уверен, что новая версия приложения не совпадаетприложение. Обратите внимание, что у меня больше не установлена старая версия.