private async Task GetCertificateFromKeyVault() { try { string clientId = KeyVaultOptions.Value.ClientId; string clientSecret = KeyVaultOptions.Value.ClientSecret; string certificateName = KeyVaultOptions.Value.CertificateName; string keyVaultUri = KeyVaultOptions.Value.KeyVaultUrl; string tenantId = KeyVaultOptions.Value.TenantId; var clientSecretCredential = new ClientSecretCredential(tenantId, clientId, clientSecret); var keyVaultSecretClient = new SecretClient(new Uri(keyVaultUri), clientSecretCredential); var certificateClient = new CertificateClient(new Uri(keyVaultUri), clientSecretCredential); KeyVaultSecret keyVaultCertificatePfx = await keyVaultSecretClient.GetSecretAsync(certificateName).ConfigureAwait(false); KeyVaultCertificate keyVaultCertificateCer = await certificateClient.GetCertificateVersionAsync(certificateName, keyVaultCertificatePfx.Properties.Version).ConfigureAwait(false); DecryptionCertificate = keyVaultCertificatePfx.Value; EncryptionCertificate = Convert.ToBase64String(keyVaultCertificateCer.Cer); EncryptionCertificateId = keyVaultCertificatePfx.Properties.Version; } catch (Exception ex) { Console.WriteLine(ex); } }
public async Task RetrieveCertificateAsync() { #region Snippet:RetrieveCertificate CertificateWithPolicy certificateWithPolicy = await client.GetCertificateAsync("MyCertificate"); #endregion #region Snippet:GetCertificate Certificate certificate = await client.GetCertificateVersionAsync(certificateWithPolicy.Name, certificateWithPolicy.Properties.Version); #endregion }