{"library":"azure-keyvault-certificates","title":"Azure Key Vault Certificates Client Library for Python","description":"The Azure Key Vault Certificates client library for Python allows developers to manage X.509 certificates in Azure Key Vault. It provides capabilities to create, retrieve, update, and delete certificates, as well as manage certificate issuers, contacts, and policies. Azure Key Vault is a cloud service for securely storing and managing secrets, keys, and certificates. This library is part of the Azure SDK for Python and is currently at version 4.10.0, with active development and regular updates.","language":"python","status":"active","last_verified":"Wed May 20","install":{"commands":["pip install azure-keyvault-certificates azure-identity"],"cli":null},"imports":["from azure.keyvault.certificates import CertificateClient","from azure.keyvault.certificates import CertificatePolicy","from azure.identity import DefaultAzureCredential"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import os\nfrom azure.keyvault.certificates import CertificateClient, CertificatePolicy\nfrom azure.identity import DefaultAzureCredential\n\n# Set your Key Vault name and certificate name as environment variables or replace directly.\n# For local development, ensure you are logged in via Azure CLI (az login).\nkeyvault_name = os.environ.get('AZURE_KEYVAULT_NAME', 'YOUR_KEY_VAULT_NAME')\ncertificate_name = 'MySampleCertificate'\n\n# Construct the Key Vault URL\nvault_url = f\"https://{keyvault_name}.vault.azure.net\"\n\n# Authenticate using DefaultAzureCredential\n# This credential type is suitable for local development and managed identity in production.\ncredential = DefaultAzureCredential()\n\n# Create a CertificateClient\ncertificate_client = CertificateClient(vault_url=vault_url, credential=credential)\n\nasync def manage_certificate():\n    print(f\"Creating a self-signed certificate '{certificate_name}' in {keyvault_name}...\")\n    # Create a certificate policy for a self-signed certificate\n    policy = CertificatePolicy.create_self_signed(\n        subject=\"CN=www.contoso.com\",\n        issuer_name=\"Self\",\n        validity_in_months=12\n    )\n\n    # Begin creating the certificate - this is a long-running operation\n    poller = await certificate_client.begin_create_certificate(certificate_name, policy)\n    \n    # Wait for the certificate creation to complete\n    created_certificate = await poller.result()\n    print(f\"Certificate '{created_certificate.name}' created with thumbprint: {created_certificate.properties.x509_thumbprint}\")\n\n    print(f\"Retrieving certificate '{certificate_name}'...\")\n    retrieved_certificate = await certificate_client.get_certificate(certificate_name)\n    print(f\"Retrieved certificate version: {retrieved_certificate.properties.version}\")\n\n    print(f\"Deleting certificate '{certificate_name}'...\")\n    # Begin deleting the certificate - this is a long-running operation\n    delete_poller = await certificate_client.begin_delete_certificate(certificate_name)\n    await delete_poller.wait()\n    print(f\"Certificate '{certificate_name}' deleted.\")\n\n    # Don't forget to close the credential and client when done (especially for async)\n    await certificate_client.close()\n    await credential.close()\n\n# Example of how to run the async function\nimport asyncio\nif __name__ == '__main__':\n    # Make sure to set AZURE_KEYVAULT_NAME environment variable\n    # e.g., export AZURE_KEYVAULT_NAME=\"my-unique-vault-name\"\n    # And login via Azure CLI: az login\n    asyncio.run(manage_certificate())","lang":"python","description":"This quickstart demonstrates how to authenticate with Azure Key Vault using `DefaultAzureCredential` and perform basic operations: creating a self-signed certificate, retrieving it, and then deleting it. Ensure you have an Azure subscription, an existing Azure Key Vault, and are logged into Azure CLI (`az login`) or have appropriate environment variables set for authentication. Replace 'YOUR_KEY_VAULT_NAME' or set the `AZURE_KEYVAULT_NAME` environment variable.","tag":null,"tag_description":null,"last_tested":"2026-04-24","results":[{"runtime":"python:3.10-alpine","exit_code":1},{"runtime":"python:3.10-slim","exit_code":1},{"runtime":"python:3.11-alpine","exit_code":1},{"runtime":"python:3.11-slim","exit_code":1},{"runtime":"python:3.12-alpine","exit_code":1},{"runtime":"python:3.12-slim","exit_code":1},{"runtime":"python:3.13-alpine","exit_code":1},{"runtime":"python:3.13-slim","exit_code":1},{"runtime":"python:3.9-alpine","exit_code":1},{"runtime":"python:3.9-slim","exit_code":1}]},"compatibility":{"tag":"verified","tag_description":"installs cleanly on critical runtimes, fast import, recently tested","last_tested":"2026-05-20","installed_version":"4.11.1","pypi_latest":"4.11.1","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":3.7,"avg_import_s":0.46,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.45,"mem_mb":12.2,"disk_size":"43.9M"},{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":0.45,"mem_mb":12.2,"disk_size":"42.8M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":3.8,"import_time_s":0.32,"mem_mb":12.2,"disk_size":"44M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":0.31,"mem_mb":12.2,"disk_size":"43M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.53,"mem_mb":12.8,"disk_size":"47.5M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":0.58,"mem_mb":12.8,"disk_size":"46.3M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":3.6,"import_time_s":0.47,"mem_mb":12.8,"disk_size":"48M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":0.47,"mem_mb":12.8,"disk_size":"47M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.51,"mem_mb":12.8,"disk_size":"39.0M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":0.54,"mem_mb":12.8,"disk_size":"37.8M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":3.3,"import_time_s":0.48,"mem_mb":12.8,"disk_size":"39M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":0.51,"mem_mb":12.8,"disk_size":"38M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.49,"mem_mb":13,"disk_size":"38.7M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":0.48,"mem_mb":12.9,"disk_size":"37.4M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":3.3,"import_time_s":0.46,"mem_mb":13,"disk_size":"39M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":0.49,"mem_mb":12.9,"disk_size":"38M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.41,"mem_mb":11.9,"disk_size":"43.9M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":0.43,"mem_mb":11.9,"disk_size":"42.8M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":4.4,"import_time_s":0.43,"mem_mb":11.9,"disk_size":"44M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"azure-keyvault-certificates","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":0.38,"mem_mb":11.9,"disk_size":"43M"}]}}