Ajouter et associer une clé de chiffrement avec l'Admin API
Créez, validez et associez une clé de chiffrement gérée par le client avec trois appels à l'Admin API.
Ces appels fonctionnent sur Claude Platform. Sur Claude Enterprise ou Claude Platform on AWS, suivez votre page de configuration.
Créer une clé externe correspond à ce que fait Add key dans la Claude Console, et la valider correspond à ce que fait Verify.
Avant de commencer
- Les « customer-managed encryption keys » (clés de chiffrement gérées par le client), ou CMEK, sont activées pour votre organisation.
- Vous disposez d'une clé API Admin. Les exemples la lisent depuis
ANTHROPIC_API_KEY. - Vous avez créé votre clé dans AWS KMS, Google Cloud KMS ou Azure Key Vault, et vous avez gardé les valeurs que les étapes de configuration vous demandent de copier.
- Vous disposez d'un espace de travail qui conserve les données, idéalement un nouveau, car les données existantes restent sous la clé d'Anthropic.
Créer, valider et associer la clé
Créer la clé externe
Remplacez
<friendly-name>par un nom d'affichage et<key-arn-from-create-key-step>par l'ARN de la clé.Pythonclient = anthropic.Anthropic() external_key = client.organization.external_keys.create( display_name="<friendly-name>", geo="us", provider_config={"type": "aws", "kms_arn": "<key-arn-from-create-key-step>"}, ) print(f"id: {external_key.id}") print(f"display_name: {external_key.display_name}")Remplacez
<friendly-name>par un nom d'affichage. Remplacez la valeur qui commence parprojects/par le nom de ressource complet de la clé.Pythonclient = anthropic.Anthropic() external_key = client.organization.external_keys.create( display_name="<friendly-name>", geo="us", provider_config={ "type": "gcp", "key_name": "projects/<your-project-id>/locations/<region>/keyRings/<your-keyring-name>/cryptoKeys/<your-key-name>", }, ) print(f"id: {external_key.id}") print(f"display_name: {external_key.display_name}")Remplacez les espaces réservés :
<friendly-name>: un nom d'affichagehttps://<your-vault-name>.vault.azure.net/: l'URI du coffre<your-key-name>: le nom de la clé<your-tenant-id>: l'ID de locataire du coffre
Pythonclient = anthropic.Anthropic() external_key = client.organization.external_keys.create( display_name="<friendly-name>", geo="us", provider_config={ "type": "azure", "vault_uri": "https://<your-vault-name>.vault.azure.net/", "key_name": "<your-key-name>", "tenant_id": "<your-tenant-id>", }, ) print(f"id: {external_key.id}") print(f"display_name: {external_key.display_name}")L'
iddans la réponse est l'ID de la clé externe. Copiez-le pour les deux étapes suivantes.{ "type": "external_key", "id": "ekey_<id>", "display_name": "<friendly-name>" }Valider la clé
Remplacez
ekey_<id>par l'ID de la clé externe.Pythonclient = anthropic.Anthropic() validation = client.organization.external_keys.validate("ekey_<id>") print(f"status: {validation.status}") print(f"error: {validation.error}")Une réponse réussie ressemble à ceci :
{ "type": "external_key_validation", "status": "success", "error": null }Si
statusvautfailure, le champerroren indique la raison. Consultez Résoudre les problèmes liés à CMEK.Associer la clé à un espace de travail
Remplacez
<workspace-id>par l'ID de l'espace de travail, qui commence parwrkspc_, etekey_<id>par l'ID de la clé externe.Pythonclient = anthropic.Anthropic() workspace = client.organization.workspaces.update( "<workspace-id>", external_key_id="ekey_<id>" ) print(f"id: {workspace.id}") print(f"external_key_id: {workspace.external_key_id}")La réponse indique l'ID de la clé associée dans
external_key_id. Si la requête est refusée, recherchez l'erreur.
Was this page helpful?