У меня есть устройство Android с установленным клиентским сертификатом X.509.Когда я использую браузер для доступа к нашему серверу, появляется всплывающее окно «Использовать сертификат», а сертификат используется для аутентификации для доступа к сайту.Итак, я знаю, что сертификат установлен и работает.
Часть кода, которая работает в формах XAMARIN UWP, не работает под Android.
Я выбрал USE_CREDENTIALS в манифесте Android.
Требуется ли другое разрешение?
Что еще нужно сделать, чтобы получить доступ к сертификатам пользователя на Android?
private X509Certificate2 GetClientCertificate()
{
using (X509Store userCaStore = new X509Store(StoreLocation.CurrentUser))
{
try
{
userCaStore.Open(OpenFlags.ReadOnly);
X509Certificate2Collection certificatesInStore = userCaStore.Certificates;
// All personal certificates are available on UWP.
// The collection is empty on Android although a cert is installed and works in other apps.
foreach (var cert in certificatesInStore)
{
if (cert.FriendlyName == "MY_CERTNAME")
{
return cert;
}
}
return null;
}
catch
{
throw;
}
finally
{
userCaStore.Close();
}
}
}