Vai al contenuto principale

Metodi di autenticazione

La configurazione di Claude Code richiede l’accesso ai modelli Anthropic. Per i team, puoi configurare l’accesso a Claude Code in uno di tre modi:
  • Claude API tramite la Claude Console
  • Amazon Bedrock
  • Google Vertex AI

Autenticazione Claude API

Per configurare l’accesso a Claude Code per il tuo team tramite Claude API:
  1. Utilizza il tuo account Claude Console esistente o crea un nuovo account Claude Console
  2. Puoi aggiungere utenti tramite uno dei metodi seguenti:
    • Invita utenti in massa dalla Console (Console -> Settings -> Members -> Invite)
    • Configura SSO
  3. Quando inviti gli utenti, hanno bisogno di uno dei seguenti ruoli:
    • Il ruolo “Claude Code” significa che gli utenti possono solo creare chiavi API Claude Code
    • Il ruolo “Developer” significa che gli utenti possono creare qualsiasi tipo di chiave API
  4. Ogni utente invitato deve completare questi passaggi:

Autenticazione del provider cloud

Per configurare l’accesso a Claude Code per il tuo team tramite Bedrock o Vertex:
  1. Segui la documentazione Bedrock o la documentazione Vertex
  2. Distribuisci le variabili di ambiente e le istruzioni per generare credenziali cloud ai tuoi utenti. Leggi di più su come gestire la configurazione qui.
  3. Gli utenti possono installare Claude Code

Controllo dell’accesso e autorizzazioni

Supportiamo autorizzazioni granulari in modo che tu possa specificare esattamente cosa l’agente è autorizzato a fare (ad es. eseguire test, eseguire linter) e cosa non è autorizzato a fare (ad es. aggiornare l’infrastruttura cloud). Queste impostazioni di autorizzazione possono essere archiviate nel controllo della versione e distribuite a tutti gli sviluppatori della tua organizzazione, nonché personalizzate dai singoli sviluppatori.

Sistema di autorizzazione

Claude Code utilizza un sistema di autorizzazione a livelli per bilanciare potenza e sicurezza:
Tipo di strumentoEsempioApprovazione richiestaComportamento “Sì, non chiedere di nuovo”
Sola letturaLetture di file, LS, GrepNoN/A
Comandi BashEsecuzione shellPermanentemente per directory di progetto e comando
Modifica di fileModifica/scrittura di fileFino alla fine della sessione

Configurazione delle autorizzazioni

Puoi visualizzare e gestire le autorizzazioni degli strumenti di Claude Code con /permissions. Questa interfaccia utente elenca tutte le regole di autorizzazione e il file settings.json da cui provengono.
  • Le regole Allow consentiranno a Claude Code di utilizzare lo strumento specificato senza ulteriore approvazione manuale.
  • Le regole Ask chiederanno all’utente una conferma ogni volta che Claude Code tenta di utilizzare lo strumento specificato. Le regole Ask hanno la precedenza sulle regole Allow.
  • Le regole Deny impediranno a Claude Code di utilizzare lo strumento specificato. Le regole Deny hanno la precedenza sulle regole Allow e Ask.
  • Directory aggiuntive estendono l’accesso ai file di Claude a directory oltre la directory di lavoro iniziale.
  • Modalità predefinita controlla il comportamento di autorizzazione di Claude quando incontra nuove richieste.
Le regole di autorizzazione utilizzano il formato: Tool o Tool(optional-specifier) Una regola che è solo il nome dello strumento corrisponde a qualsiasi utilizzo di quello strumento. Ad esempio, aggiungere Bash all’elenco delle regole Allow consentirebbe a Claude Code di utilizzare lo strumento Bash senza richiedere l’approvazione dell’utente.

Modalità di autorizzazione

Claude Code supporta diverse modalità di autorizzazione che possono essere impostate come defaultMode nei file di impostazioni:
ModalitàDescrizione
defaultComportamento standard - richiede l’autorizzazione al primo utilizzo di ogni strumento
acceptEditsAccetta automaticamente le autorizzazioni di modifica dei file per la sessione
planModalità Piano - Claude può analizzare ma non modificare file o eseguire comandi
bypassPermissionsSalta tutti i prompt di autorizzazione (richiede ambiente sicuro - vedi avvertenza di seguito)

Directory di lavoro

Per impostazione predefinita, Claude ha accesso ai file nella directory in cui è stato avviato. Puoi estendere questo accesso:
  • Durante l’avvio: Utilizza l’argomento CLI --add-dir <path>
  • Durante la sessione: Utilizza il comando slash /add-dir
  • Configurazione persistente: Aggiungi a additionalDirectories nei file di impostazioni
I file nelle directory aggiuntive seguono le stesse regole di autorizzazione della directory di lavoro originale - diventano leggibili senza prompt e le autorizzazioni di modifica dei file seguono la modalità di autorizzazione corrente.

Regole di autorizzazione specifiche dello strumento

Alcuni strumenti supportano controlli di autorizzazione più granulari: Bash
  • Bash(npm run build) Corrisponde al comando Bash esatto npm run build
  • Bash(npm run test:*) Corrisponde ai comandi Bash che iniziano con npm run test
  • Bash(curl http://site.com/:*) Corrisponde ai comandi curl che iniziano esattamente con curl http://site.com/
Claude Code è consapevole degli operatori shell (come &&) quindi una regola di corrispondenza del prefisso come Bash(safe-cmd:*) non gli darà il permesso di eseguire il comando safe-cmd && other-cmd
Limitazioni importanti dei modelli di autorizzazione Bash:
  1. Questo strumento utilizza corrispondenze di prefisso, non modelli regex o glob
  2. Il carattere jolly :* funziona solo alla fine di un modello per corrispondere a qualsiasi continuazione
  3. Modelli come Bash(curl http://github.com/:*) possono essere bypassati in molti modi:
    • Opzioni prima dell’URL: curl -X GET http://github.com/... non corrisponderà
    • Protocollo diverso: curl https://github.com/... non corrisponderà
    • Reindirizzamenti: curl -L http://bit.ly/xyz (reindirizza a github)
    • Variabili: URL=http://github.com && curl $URL non corrisponderà
    • Spazi extra: curl http://github.com non corrisponderà
Per un filtro URL più affidabile, considera:
  • Utilizzare lo strumento WebFetch con l’autorizzazione WebFetch(domain:github.com)
  • Istruire Claude Code sui tuoi modelli curl consentiti tramite CLAUDE.md
  • Utilizzare hook per la convalida delle autorizzazioni personalizzate
Read & Edit Le regole Edit si applicano a tutti gli strumenti integrati che modificano i file. Claude farà un tentativo migliore per applicare le regole Read a tutti gli strumenti integrati che leggono file come Grep, Glob e LS. Le regole Read & Edit seguono entrambe la specifica gitignore con quattro tipi di modello distinti:
ModelloSignificatoEsempioCorrisponde
//pathPercorso assoluto dalla radice del filesystemRead(//Users/alice/secrets/**)/Users/alice/secrets/**
~/pathPercorso dalla directory homeRead(~/Documents/*.pdf)/Users/alice/Documents/*.pdf
/pathPercorso relativo al file di impostazioniEdit(/src/**/*.ts)<settings file path>/src/**/*.ts
path o ./pathPercorso relativo alla directory correnteRead(*.env)<cwd>/*.env
Un modello come /Users/alice/file NON è un percorso assoluto - è relativo al tuo file di impostazioni! Utilizza //Users/alice/file per i percorsi assoluti.
  • Edit(/docs/**) - Modifiche in <project>/docs/ (NON /docs/!)
  • Read(~/.zshrc) - Legge il .zshrc della tua directory home
  • Edit(//tmp/scratch.txt) - Modifica il percorso assoluto /tmp/scratch.txt
  • Read(src/**) - Legge da <current-directory>/src/
WebFetch
  • WebFetch(domain:example.com) Corrisponde alle richieste di fetch a example.com
MCP
  • mcp__puppeteer Corrisponde a qualsiasi strumento fornito dal server puppeteer (nome configurato in Claude Code)
  • mcp__puppeteer__puppeteer_navigate Corrisponde allo strumento puppeteer_navigate fornito dal server puppeteer
A differenza di altri tipi di autorizzazione, le autorizzazioni MCP NON supportano caratteri jolly (*).Per approvare tutti gli strumenti da un server MCP:
  • ✅ Utilizza: mcp__github (approva TUTTI gli strumenti GitHub)
  • ❌ Non utilizzare: mcp__github__* (i caratteri jolly non sono supportati)
Per approvare solo strumenti specifici, elencali ciascuno:
  • ✅ Utilizza: mcp__github__get_issue
  • ✅ Utilizza: mcp__github__list_issues

Controllo di autorizzazione aggiuntivo con hook

Gli hook di Claude Code forniscono un modo per registrare comandi shell personalizzati per eseguire la valutazione delle autorizzazioni in fase di esecuzione. Quando Claude Code effettua una chiamata a uno strumento, gli hook PreToolUse vengono eseguiti prima del sistema di autorizzazione e l’output dell’hook può determinare se approvare o negare la chiamata dello strumento al posto del sistema di autorizzazione.

Impostazioni di policy gestite dall’azienda

Per le distribuzioni aziendali di Claude Code, supportiamo impostazioni di policy gestite dall’azienda che hanno la precedenza sulle impostazioni dell’utente e del progetto. Ciò consente agli amministratori di sistema di applicare politiche di sicurezza che gli utenti non possono ignorare. Gli amministratori di sistema possono distribuire policy a:
  • macOS: /Library/Application Support/ClaudeCode/managed-settings.json
  • Linux e WSL: /etc/claude-code/managed-settings.json
  • Windows: C:\ProgramData\ClaudeCode\managed-settings.json
Questi file di policy seguono lo stesso formato dei file di impostazioni regolari ma non possono essere ignorati dalle impostazioni dell’utente o del progetto. Ciò garantisce politiche di sicurezza coerenti in tutta l’organizzazione.

Precedenza delle impostazioni

Quando esistono più fonti di impostazioni, vengono applicate nel seguente ordine (dalla precedenza più alta a quella più bassa):
  1. Policy aziendali
  2. Argomenti della riga di comando
  3. Impostazioni di progetto locale (.claude/settings.local.json)
  4. Impostazioni di progetto condivise (.claude/settings.json)
  5. Impostazioni utente (~/.claude/settings.json)
Questa gerarchia garantisce che le politiche organizzative siano sempre applicate consentendo comunque flessibilità a livello di progetto e utente dove appropriato.

Gestione delle credenziali

Claude Code gestisce in modo sicuro le tue credenziali di autenticazione:
  • Posizione di archiviazione: Su macOS, le chiavi API, i token OAuth e altre credenziali sono archiviati nel Keychain macOS crittografato.
  • Tipi di autenticazione supportati: Credenziali Claude.ai, credenziali Claude API, Bedrock Auth e Vertex Auth.
  • Script di credenziali personalizzati: L’impostazione apiKeyHelper può essere configurata per eseguire uno script shell che restituisce una chiave API.
  • Intervalli di aggiornamento: Per impostazione predefinita, apiKeyHelper viene chiamato dopo 5 minuti o in risposta HTTP 401. Imposta la variabile di ambiente CLAUDE_CODE_API_KEY_HELPER_TTL_MS per intervalli di aggiornamento personalizzati.