[英]Xamarin/Visual Studio on Mac - iPhone - Not able to list X509Store certificates
環境設備: 。 iPhone6s
開發環境: .net Standard 1.5,Mac Community版本7.2.2(內部版本7)上的Visual Studio,Xamarin
我有以下代碼來獲取/列出iPhone上安裝的證書。 到目前為止,我還沒有成功–使用下面的代碼會得到一個空的收藏集。
我正在使用開發配置文件在iPhone上運行代碼。
我有2個項目,一個可移植項目和一個iOS項目。 下面列出的代碼在可移植類庫中。
using System;
using System.Collections.Generic;
using Xamarin.Forms;
using System.Security.Cryptography;
using System.Security.Cryptography.X509Certificates;
X509Store paramStore
paramStore = new X509Store(StoreName.My, StoreLocation.CurrentUser)
paramStore.Open(OpenFlags.ReadOnly);
foreach (X509Certificate2 mCert in paramStore.Certificates)
{
numberOfCertificates = numberOfCertificates + 1;
}
我也嘗試過訪問StoreName.Root,StoreName.CertificateAuthority以及OpenFlags的變體,例如.ReadWrite-相同結果沒有數據。
尋找輸入/想法。
不幸的是,iOS不支持它,這是Apple方面的解釋:
首先,一些澄清:
考慮到您之前討論的是“客戶端身份驗證”,我假設您是在談論數字身份而不是證書。 注意:數字身份是私鑰和包含與該私鑰匹配的公鑰的證書的組合,如果要服務器對客戶端進行身份驗證,則數字身份是需要在客戶端顯示的身份。
似乎您在乎通過MDM安裝的數字身份。 以這種方式安裝的憑據將放置在Apple鑰匙串訪問組中,因此,僅Apple應用程序可以訪問。 QA1745 使證書和密鑰可用於您的應用程序對此進行了詳細討論。
有什么方法可以檢查[設備]上是否安裝了[數字身份]?
不一般。
更多詳細信息,請參閱Apple Developer Forum中的相關案例: 如何從iOS設備獲取證書列表?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.