Я хотел бы получить доступ к хранилищу сертификатов своего приложения из другого приложения. Я уже включил "sharedusercertificates"
в файле package.appmanifest
.Как получить доступ к хранилищу сертификатов приложений в Windows Phone 8.1 Приложение Runtime
Windows.Storage.StorageFile selectedCertFile = await folder.GetFileAsync(fileName);
IBuffer buffer = await FileIO.ReadBufferAsync(selectedCertFile);
string certificateData = CryptographicBuffer.EncodeToBase64String(buffer);
string password = "password";
await CertificateEnrollmentManager.ImportPfxDataAsync(
certificateData,
password,
ExportOption.NotExportable,
KeyProtectionLevel.ConsentWithPassword,
InstallOptions.None,
selectedCertFile.DisplayName);
В моем приложении, я могу перечислить установленные сертификаты без проблем:
protected override void OnNavigatedTo(NavigationEventArgs e)
{
var task = CertificateStores.FindAllAsync();
task.AsTask().Wait();
var certlist = task.GetResults();
Debug.WriteLine("Cert count: {0}", certlist.Count);
LoadCertList(certlist);
}
private void LoadCertList(IReadOnlyList<Certificate> certificateList)
{
listbox1.Items.Clear();
foreach (Certificate cert in certificateList)
{
listbox1.Items.Add(cert.Subject);
}
}
Если я пытаюсь получить доступ к тем из другого приложения, оно не будет в списке. В настройках почтового клиента Windows Phones 8.1 установлен установленный сертификат. В списке указаны сертификаты, которые были установлены регулярно, а не программно.
Есть ли способ установить мои сертификаты в хранилище сертификатов системы? Поэтому его можно использовать в других приложениях.
Я искал в Интернете уже несколько дней, но не нашел решения.
В связи с этим это должно быть возможно.
«Возможность sharedUserCertificates предоставляет приложение контейнер доступа к сертификатам и ключам, содержащийся во всех магазинах пользователей и смарт-карте Trusted Roots магазине читать.» https://msdn.microsoft.com/en-us/library/windows/apps/hh465025.aspx
ли я что-то пропустил? Помощь будет высоко оценена.
Dino