pem_data = get_secret('https://keyvault.azure.net/', 'x509-cert')
pem_data = '-----BEGIN CERTIFICATE----- ' + pem_data + ' -----END CERTIFICATE-----'
pem_data = pem_data.encode()
key = x509.load_pem_x509_certificate(pem_data, backend=default_backend())
private_key = key.private_key()
但是,这将错误地表示它无法加载证书。
您从密钥库获得的pem_data已经是pem格式,您可以获得公钥。
pem_data = client.get_secret("https://XX.vault.azure.net/", "XX", "XX")
pem_data = pem_data.value.encode()
cert = load_pem_x509_certificate(pem_data, backend=default_backend())
public_key = cert.public_key()
如果您想要获得私钥,可以使用openssl:
import OpenSSL.crypto
pem_data = client.get_secret("https://XX.vault.azure.net/", "XX", "XX")
pem_data = pem_data.value.encode()
crtObj = crypto.load_certificate(crypto.FILETYPE_PEM, pem_data)
pubKeyObject = crtObj.get_pubkey()
priKeyString = crypto.dump_privatekey(crypto.FILETYPE_PEM, pubKeyObject)
print(priKeyString)
注:
那么,如何使用私钥呢?这里是有关文件的要点。 如何在Azure Key Vault中序列化和反序列化PFX证书帮助了我?但跟着它走之后,我就到了这个状态。
我正在尝试将https://docs.microsoft.com/en-us/Azure/key-vault/tutorial-net-create-vault-azure-web-app中的示例代码转换为VB.net,并使用它访问我存储在Azure密钥库中的秘密。我在http://converter.telerik.com/使用了转换器。 转换后的代码出现一个错误:“委托'KeyVaultCli
使用Azure Key Vault Secret client library for Python,我获得了证书的秘密,它有一个提取的私钥。
我正在尝试对现有API启用Azure密钥库证书。我们已经在Azure Key Vault帐户中拥有秘密和Azure Key Vault证书。下面是配置证书的代码: 在我的本地计算机上,我正确地导入了证书,其中包括下载pfx格式。
嘿,我想使用Azure密钥库加密/解密我的数据库中的数据。我看到自己和其他人都在纠结的一个主要问题是如何保护程序中的访问id和密钥。我看到有人说,如果你没有一个原生的微软应用程序(我没有,我的应用程序运行在第三方linux服务器上),你可以获得一个证书来访问密钥库。在我掏出200美元购买之前,我想知道拥有该证书意味着即使证书被盗,攻击者也不能用它来访问密钥库,对吧?我的理解是证书只能在我的域上工作
null 大多数示例使用makecert或New-SelfSignedCertificate创建证书。在这种情况下,对于生产应用程序,自签名证书是否有问题?这仅供应用程序使用Azure Key Vault进行身份验证,客户机在浏览器中不会看到这一点。 如果在这种情况下,自签名证书仍然不受欢迎,那么从受信任的权威机构购买证书是否与购买SSL/TLS证书的过程相同?甚至是同一类型的证书吗?