фон:
Я использую хранилище ключа Azure для создания сертификатов. Мне нужен государственный и частный ключ после создания сертификата. Открытый ключ доступен в Azure.security.keyvault.certificates.keyvaultCertificateWithPolicy , но не личный ключ. Я пытаюсь использовать, получая приватный ключ, используя метод rsa.exportrsaprivatekey () в результате x509certificate.getrsaprivatekey () .
Я считаю, что проблема, которая Getrsaprivatekey () Метод не представляется, что это не так, как это происходит, так и является таковым, таким, таким, как это происходит, так и является таким, как это происходит, так и является таковым, как это происходит, так и является таким, каким -то не является таким, каким -то не таким, как это происходит. Но я не уверен, почему я не вижу этого в отладке, это может быть ленивая нагрузка или другая проблема.certClient = new CertificateClient(new Uri(kvUri), new DefaultAzureCredential());
var x509CertificateResponse = await certClient.DownloadCertificateAsync(new DownloadCertificateOptions(certName)
{
KeyStorageFlags = X509KeyStorageFlags.MachineKeySet
});
var x509Certificate = x509CertificateResponse.Value;
// Extract the private key using GetRSAPrivateKey
privateKey = Convert.ToBase64String(x509Certificate.GetRSAPrivateKey()!.ExportRSAPrivateKey());
< /code>
ошибка, выброшенная: < /p>
system.security.cryptography.cryptographicexception
hresult = 0x80090029 Сообщение = запрошенная операция не поддерживается. /> system.security.cryptography.cngkey.export(cngkeyblobformat format)
at system.security.cryptography.rsacng.exportparameters (boolean
includeprivateparameters) at
system.security.cryptory.rsa at
system.security.cryptography.rsa.exportrsaprivatekey () at
classname.d__9.movenext () в c: \ source \ class.cs: line
216 < /p>
< /blockquote>
Что является причиной проблемы? Что мне нужно сделать, чтобы правильно заполнить получение закрытого ключа?
Подробнее здесь: https://stackoverflow.com/questions/796 ... rted-error