Configurare Azure Key Vault per CMEK
Usa Azure Key Vault per fornire una chiave di crittografia per la tua organizzazione.
Claude Code
Lascia che Claude Code configuri questa funzionalità per te
/claude-api aiutami a configurare una chiave di crittografia gestita dal cliente con Azure Key VaultQuesta guida illustra la configurazione di una chiave di Azure Key Vault come chiave di crittografia gestita dal cliente (CMEK) per la tua organizzazione Anthropic.
Prerequisiti
- Un Azure Key Vault con autorizzazione RBAC abilitata (
enableRbacAuthorization: true) e accesso alla rete pubblica consentito. Anthropic chiama il tuo vault tramite l'endpoint pubblico del piano dati; gli endpoint privati non sono supportati. - Protezione dall'eliminazione definitiva abilitata (
enablePurgeProtection: true) sul vault. Senza di essa, una chiave eliminata può essere eliminata definitivamente durante la finestra di conservazione dell'eliminazione temporanea, causando una perdita irreversibile dei tuoi dati protetti da CMEK. La protezione dall'eliminazione definitiva non può essere disabilitata una volta abilitata. - Autorizzazioni per creare chiavi nel vault e per assegnare ruoli RBAC su di esso.
- Autorizzazioni per creare entità servizio nel tuo tenant Entra (
Application Administrator,Cloud Application Administrator, o un ruolo personalizzato equivalente). - Una chiave API Admin di Anthropic per la tua organizzazione.
- La CLI
azinstallata e autenticata. - Impostazioni di diagnostica configurate sul vault per instradare la categoria di log
AuditEventa Log Analytics, un account di archiviazione o un hub eventi. Azure Key Vault non emette log di audit del piano dati (comeKeyWrap,KeyUnwrapeKeyGet) per impostazione predefinita, quindi senza questo non ottieni alcuna traccia di audit per le operazioni sulle chiavi di Anthropic.
Informazioni sull'app Anthropic
Per far sì che Anthropic utilizzi la tua chiave di crittografia, devi configurare un ID applicazione multitenant e un nome visualizzato di Anthropic. Questi valori sono:
| Campo | Valore |
|---|---|
| ID client dell'app multitenant (US) | 8635ae1a-3e5d-44e8-a4ed-e0f614466f87 |
| Nome visualizzato dell'app | anthropic-cmek-client-us |
Configurazione della chiave di crittografia
Fornisci il consenso all'applicazione multitenant di Anthropic
Questo crea un'entità servizio nel tuo tenant Entra per l'applicazione client CMEK di Anthropic. L'applicazione non richiede autorizzazioni Microsoft Graph; esiste esclusivamente come destinazione di federazione per l'accesso al piano dati di Key Vault.
az ad sp create --id 8635ae1a-3e5d-44e8-a4ed-e0f614466f87Dall'output, acquisisci il campo
id. Questo è l'ID oggetto dell'entità servizio nel tuo tenant, che usi quando assegni il ruolo RBAC.{ "appId": "8635ae1a-3e5d-44e8-a4ed-e0f614466f87", "displayName": "anthropic-cmek-client-us", "id": "<sp-object-id>" }Se l'entità servizio esiste già nel tuo tenant (da un tentativo precedente o da un'altra integrazione),
az ad sp createtermina con un errore "already exists". Recupera invece il suo ID oggetto:az ad sp show --id 8635ae1a-3e5d-44e8-a4ed-e0f614466f87 --query id -o tsvQuesto passaggio non ha un equivalente nel Portale. Se non hai la CLI di Azure installata localmente, apri Cloud Shell dalla barra di navigazione superiore del Portale. Dopo che il comando ha avuto successo, puoi trovare l'ID oggetto dell'entità servizio in Microsoft Entra ID > Applicazioni aziendali cancellando il filtro predefinito per tipo di applicazione e cercando
anthropic-cmek-client-us.
Trova l'Object ID dell'entità servizio nella panoramica della sua applicazione aziendale Entra. Crea una chiave RSA nel tuo vault
Azure Key Vault non supporta il wrapping di chiavi simmetriche, quindi la chiave deve essere RSA (3072 bit o superiore) con
wrapKeyeunwrapKeynelle sue operazioni consentite.L'opzione
--tagsaggiunge il tag dell'organizzazione,anthropic-org-<ORGANIZATION_UUID>con il valoretrue, dove<ORGANIZATION_UUID>è l'ID della tua organizzazione Anthropic in minuscolo. Il tag è necessario affinché Anthropic convalidi la chiave.az keyvault key create \ --vault-name <VAULT_NAME> \ --name <KEY_NAME> \ --kty RSA --size 3072 \ --ops wrapKey unwrapKey \ --tags anthropic-org-<ORGANIZATION_UUID>=truePer le chiavi supportate da HSM, usa
--kty RSA-HSM(richiede un vault con SKU Premium). Le chiavi RSA protette da software sono accettabili per questa integrazione.Dal Portale, apri il tuo Key Vault, seleziona Keys, quindi Generate/Import. Imposta il tipo di chiave su RSA e la dimensione su 3072 o superiore. Per limitare la chiave solo al wrap e unwrap, apri la versione della chiave, scorri fino a Permitted operations e deseleziona tutto tranne Wrap Key e Unwrap Key.
Nella pagina Create a key, aggiungi anche il tag dell'organizzazione in Tags.

Crea una chiave RSA di dimensione 3072 o superiore, con il tag anthropic-org-<ORGANIZATION_UUID> impostato su true. 
Limita le operazioni consentite a Wrap Key e Unwrap Key. La versione della chiave mostra il tag dell'organizzazione. Per condividere una chiave tra più organizzazioni Anthropic, aggiungi un tag di questo tipo per ciascuna organizzazione. Una versione della chiave può contenere al massimo 15 tag, inclusi i tuoi.
Concedi all'entità servizio di Anthropic l'accesso alla tua chiave
Assegna il ruolo
Key Vault Crypto Userall'entità servizio del primo passaggio, con ambito limitato alla singola chiave anziché all'intero vault.VAULT_ID=$(az keyvault show --name <your-vault-name> --query id -o tsv) az role assignment create \ --role "Key Vault Crypto User" \ --assignee-object-id <sp-object-id> \ --assignee-principal-type ServicePrincipal \ --scope "${VAULT_ID}/keys/<your-key-name>"Il ruolo integrato
Key Vault Crypto Userconcede operazioni crittografiche sulle chiavi (encrypt, decrypt, wrap, unwrap, sign, verify) più la lettura della chiave nel suo ambito assegnato. La restrizione--ops wrapKey unwrapKeyche hai impostato sulla chiave nel passaggio precedente restringe ulteriormente quali di queste operazioni possono avere successo su questa chiave, quindi in pratica Anthropic può solo eseguire wrap e unwrap.Dal Portale, apri la chiave (non il vault), seleziona la sua scheda Access control (IAM), fai clic su Add > Add role assignment, seleziona Key Vault Crypto User e assegnalo all'entità servizio
anthropic-cmek-client-us.
Assegna Key Vault Crypto User all'entità servizio di Anthropic, con ambito limitato alla chiave. Verifica la configurazione del tuo vault
az keyvault show --name <your-vault-name> \ --query "{rbac:properties.enableRbacAuthorization, purge:properties.enablePurgeProtection, pub:properties.publicNetworkAccess, net:properties.networkAcls.defaultAction, ipRules:properties.networkAcls.ipRules, uri:properties.vaultUri, tenantId:properties.tenantId}"Conferma che:
rbacsiatrue.purgesiatrue. Se èfalseonull, abilita la protezione dall'eliminazione definitiva sul vault prima di procedere. Senza di essa, una chiave eliminata temporaneamente può essere eliminata definitivamente durante la finestra di conservazione, rendendo irrecuperabili i tuoi dati protetti da CMEK.pubsia"Enabled". Se è"Disabled", Anthropic non può raggiungere il vault tramite il suo endpoint pubblico del piano dati e la convalida fallisce.netsia"Allow", oppure, se è"Deny", cheipRulesincluda gli intervalli di uscita di Anthropic (contatta Anthropic per l'elenco corrente).urisia l'URI del vault che usi quando registri la chiave.tenantIdsia il tenant che governa il vault. Usa questo valore cometenant_idquando registri la chiave, non il tenant della tua sottoscrizione attualmente attiva (i due possono differire nelle configurazioni cross-tenant).
Registra la chiave con Anthropic
Il modo in cui registri la chiave dipende dal prodotto che usi.
Puoi configurare la chiave nella Claude Console o tramite l'Admin API, con lo stesso risultato.
Registra la chiave con Anthropic
Nella Claude Console, vai alla pagina Data retention (
platform.claude.com/settings/privacy). Se non vedi Encryption keys, seleziona Organization dal menu a discesa nella parte superiore della pagina. In Encryption keys, fai clic su Add key. Inserisci un nome visualizzato, scegli Azure Key Vault e fai clic su Continue. Compila Vault URI, Key name e Tenant ID, e fai clic su Add.Il passaggio dei dettagli della chiave mostra il tag dell'organizzazione. Aggiungilo alla chiave, come descrive il passaggio di creazione, prima di fare clic su Add.
Convalida la chiave
Nell'elenco Encryption keys, fai clic su Verify accanto alla chiave. Quando il controllo ha esito positivo appare Connected. Se non riesce, un messaggio ne indica il motivo.
Collega la chiave a un workspace
Nella Claude Console, vai alla pagina Data retention (
platform.claude.com/settings/privacy) e seleziona il workspace dal menu a discesa nella parte superiore della pagina. In Encryption key, seleziona la chiave, fai clic su Save e conferma. Il collegamento di una chiave non può essere annullato. Per un workspace che riceve già richieste, la chiave può richiedere fino a un giorno per avere effetto.
Registra la chiave con Anthropic
Crea una configurazione di chiave esterna tramite l'Admin API.
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}")La risposta contiene l'ID della chiave esterna:
{ "type": "external_key", "id": "ekey_<id>", "display_name": "<friendly-name>" }Convalida la chiave
Attiva un ciclo completo di crittografia e decrittografia sulla tua chiave. Questo conferma che Anthropic può autenticarsi al tuo tenant ed eseguire operazioni di wrap e unwrap.
Pythonclient = anthropic.Anthropic() validation = client.organization.external_keys.validate("ekey_<id>") print(f"status: {validation.status}") print(f"error: {validation.error}")Una risposta riuscita appare così:
{ "type": "external_key_validation", "status": "success", "error": null }Se la convalida fallisce, il campo
errordescrive il problema. Le cause comuni sono:- Ritardo di propagazione RBAC: le assegnazioni di ruolo possono richiedere alcuni minuti per avere effetto. Attendi e riprova.
- ACL di rete che bloccano Anthropic: conferma l'accesso alla rete pubblica e
ipRulescome descritto nel passaggio di verifica. - Criteri di accesso condizionale sulle identità del carico di lavoro: se il tuo tenant ha criteri di accesso condizionale che prendono di mira le entità servizio, escludi l'entità servizio di Anthropic o aggiungi gli intervalli di uscita di Anthropic alle posizioni denominate del criterio.
Collega la chiave a un workspace
Una volta convalidata la chiave, collegala a un nuovo workspace prima di inviare qualsiasi richiesta a quel workspace. Per un workspace che riceve già richieste, la chiave può richiedere fino a un giorno per avere effetto.
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}")
In claude.ai > Organization settings > Data and privacy, apri Encryption keys, quindi fai clic su Add key. Scegli Azure, inserisci l'URI del vault, il nome della chiave e l'ID del tenant dal passaggio di verifica, e fai clic su Continue. Anthropic convalida la chiave con un ciclo completo di crittografia e decrittografia. Una volta che appare come verificata, la tua organizzazione è protetta da CMEK da quel momento in poi.
Su Claude Enterprise, CMEK si applica all'intera organizzazione, quindi non c'è un passaggio separato di collegamento al workspace, e un'organizzazione può avere solo una chiave.
Terraform
Per le distribuzioni infrastructure-as-code, gli stessi passaggi corrispondono ai provider azurerm e azuread.
Was this page helpful?