MonoTouch - Как вы используете SecKeyChain.QueryAsRecord (), чтобы получить список сертификатов? - PullRequest
2 голосов
/ 25 января 2011

Я отправил по электронной почте свой iPad сертификат .p12 и установил его в настройках в разделе «Настройки-> Профили-> Профили конфигурации».

Я попытался использовать следующий код для получения массива сертификатов на iPad:

        SecRecord myquery = new SecRecord(SecKind.Identity);
        SecStatusCode resultCode;
        SecRecord[] arrayRecords = SecKeyChain.QueryAsRecord(myquery, 10, out resultCode);

Для resultCode устанавливается значение ItemNotFound при возврате из QueryAsRecord ().Я также попытался создать myquery как:

        SecRecord myquery = new SecRecord(SecKind.Certificate);

, но это также привело к тому, что для resultCode было установлено значение ItemNotFound.

Как вы используете SecKeyChain.QueryAsRecord () для получения списка установленных сертификатов?

Ответы [ 2 ]

6 голосов
/ 26 января 2011

Брелок не так полезен, как вы думаете. Брелок дает вам доступ только к сертификатам, которые вы добавили вручную, но не к системным.

Или, по крайней мере, я никогда не находил способа сделать это, и поиск в Google несколько месяцев назад не дал ответов на эту проблему.

0 голосов
/ 10 июля 2015

Я категорически не согласен. Привязки monomac с KeyChain действительно хорошо сделаны и просты в использовании. Вы можете получить доступ ко всем «интернет-паролям» цепочки ключей для входа и прочитать / обновить / удалить их.

Вот ссылка на проект Github, который даст вам рабочий пример из коробки:

https://github.com/danclarke/MonoMacKeychainDemo/blob/master/KeyChainDemo/KeychainAccess.cs

Best

M

...