Gestione delle Identità e degli Accessi
Scopri come configurare l’autenticazione degli utenti, l’autorizzazione e i controlli di accesso per Claude Code nella tua organizzazione.
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:
- API Anthropic tramite la Console Anthropic
- Amazon Bedrock
- Google Vertex AI
Autenticazione API Anthropic
Per configurare l’accesso a Claude Code per il tuo team tramite API Anthropic:
- Usa il tuo account Console Anthropic esistente o crea un nuovo account Console Anthropic
- Puoi aggiungere utenti attraverso uno dei metodi seguenti:
- Invita utenti in massa dall’interno della Console (Console -> Impostazioni -> Membri -> Invita)
- Configura SSO
- Quando inviti utenti, hanno bisogno di uno dei seguenti ruoli:
- Il ruolo “Claude Code” significa che gli utenti possono creare solo chiavi API Claude Code
- Il ruolo “Developer” significa che gli utenti possono creare qualsiasi tipo di chiave API
- Ogni utente invitato deve completare questi passaggi:
- Accettare l’invito della Console
- Verificare i requisiti di sistema
- Installare Claude Code
- Accedere con le credenziali dell’account Console
Autenticazione del provider cloud
Per configurare l’accesso a Claude Code per il tuo team tramite Bedrock o Vertex:
- Segui la documentazione Bedrock o la documentazione Vertex
- Distribuisci le variabili d’ambiente e le istruzioni per generare le credenziali cloud ai tuoi utenti. Leggi di più su come gestire la configurazione qui.
- Gli utenti possono installare Claude Code
Controllo degli accessi e permessi
Supportiamo permessi granulari in modo che tu possa specificare esattamente cosa l’agente è autorizzato a fare (ad esempio eseguire test, eseguire linter) e cosa non è autorizzato a fare (ad esempio aggiornare l’infrastruttura cloud). Queste impostazioni dei permessi possono essere inserite nel controllo versione e distribuite a tutti gli sviluppatori della tua organizzazione, oltre ad essere personalizzate dai singoli sviluppatori.
Sistema di permessi
Claude Code utilizza un sistema di permessi a livelli per bilanciare potenza e sicurezza:
Tipo di Strumento | Esempio | Approvazione Richiesta | Comportamento “Sì, non chiedere più” |
---|---|---|---|
Solo lettura | Lettura file, LS, Grep | No | N/A |
Comandi Bash | Esecuzione shell | Sì | Permanentemente per directory del progetto e comando |
Modifica File | Modifica/scrittura file | Sì | Fino alla fine della sessione |
Configurazione dei permessi
Puoi visualizzare e gestire i permessi degli strumenti di Claude Code con /permissions
. Questa UI elenca tutte le regole di permesso e il file settings.json da cui provengono.
- Le regole Allow permetteranno a Claude Code di utilizzare lo strumento specificato senza ulteriore approvazione manuale.
- Le regole Ask chiederanno conferma all’utente ogni volta che Claude Code tenta di utilizzare lo strumento specificato. Le regole Ask hanno precedenza sulle regole allow.
- Le regole Deny impediranno a Claude Code di utilizzare lo strumento specificato. Le regole Deny hanno precedenza sulle regole allow e ask.
- Le Directory aggiuntive estendono l’accesso ai file di Claude alle directory oltre la directory di lavoro iniziale.
- La Modalità predefinita controlla il comportamento dei permessi di Claude quando incontra nuove richieste.
Le regole di permesso utilizzano il formato: Tool
o Tool(specifier-opzionale)
Una regola che è solo il nome dello strumento corrisponde a qualsiasi uso di quello strumento. Ad esempio, aggiungere Bash
all’elenco delle regole allow permetterebbe a Claude Code di utilizzare lo strumento Bash senza richiedere l’approvazione dell’utente.
Modalità di permesso
Claude Code supporta diverse modalità di permesso che possono essere impostate come defaultMode
nei file delle impostazioni:
Modalità | Descrizione |
---|---|
default | Comportamento standard - richiede permesso al primo uso di ogni strumento |
acceptEdits | Accetta automaticamente i permessi di modifica file per la sessione |
plan | Modalità Piano - Claude può analizzare ma non modificare file o eseguire comandi |
bypassPermissions | Salta tutti i prompt di permesso (richiede ambiente sicuro - vedi avviso sotto) |
Directory di lavoro
Per impostazione predefinita, Claude ha accesso ai file nella directory dove è stato avviato. Puoi estendere questo accesso:
- Durante l’avvio: Usa l’argomento CLI
--add-dir <path>
- Durante la sessione: Usa il comando slash
/add-dir
- Configurazione persistente: Aggiungi a
additionalDirectories
nei file delle impostazioni
I file nelle directory aggiuntive seguono le stesse regole di permesso della directory di lavoro originale - diventano leggibili senza prompt, e i permessi di modifica file seguono la modalità di permesso corrente.
Regole di permesso specifiche per strumento
Alcuni strumenti supportano controlli di permesso più granulari:
Bash
Bash(npm run build)
Corrisponde al comando Bash esattonpm run build
Bash(npm run test:*)
Corrisponde ai comandi Bash che iniziano connpm run test
Bash(curl http://site.com/:*)
Corrisponde ai comandi curl che iniziano esattamente concurl http://site.com/
Claude Code è consapevole degli operatori shell (come &&
) quindi una regola di corrispondenza prefisso come Bash(safe-cmd:*)
non gli darà il permesso di eseguire il comando safe-cmd && other-cmd
Limitazioni importanti dei pattern di permesso Bash:
- Questo strumento utilizza corrispondenze di prefisso, non pattern regex o glob
- Il carattere jolly
:*
funziona solo alla fine di un pattern per corrispondere a qualsiasi continuazione - Pattern come
Bash(curl http://github.com/:*)
possono essere aggirati 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à
- Opzioni prima dell’URL:
Per un filtraggio URL più affidabile, considera:
- Utilizzare lo strumento WebFetch con permesso
WebFetch(domain:github.com)
- Istruire Claude Code sui tuoi pattern curl consentiti tramite CLAUDE.md
- Utilizzare hook per la validazione personalizzata dei permessi
Read & Edit
Le regole Edit
si applicano a tutti gli strumenti integrati che modificano file. Claude farà un tentativo di buona fede 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 pattern distinti:
Pattern | Significato | Esempio | Corrisponde |
---|---|---|---|
//path | Percorso assoluto dalla radice del filesystem | Read(//Users/alice/secrets/**) | /Users/alice/secrets/** |
~/path | Percorso dalla directory home | Read(~/Documents/*.pdf) | /Users/alice/Documents/*.pdf |
/path | Percorso relativo al file delle impostazioni | Edit(/src/**/*.ts) | <percorso file impostazioni>/src/**/*.ts |
path o ./path | Percorso relativo alla directory corrente | Read(*.env) | <cwd>/*.env |
Un pattern come /Users/alice/file
NON è un percorso assoluto - è relativo al tuo file delle impostazioni! Usa //Users/alice/file
per percorsi assoluti.
Edit(/docs/**)
- Modifiche in<project>/docs/
(NON/docs/
!)Read(~/.zshrc)
- Legge il.zshrc
della tua directory homeEdit(//tmp/scratch.txt)
- Modifica il percorso assoluto/tmp/scratch.txt
Read(src/**)
- Legge da<directory-corrente>/src/
WebFetch
WebFetch(domain:example.com)
Corrisponde alle richieste di fetch a example.com
MCP
mcp__puppeteer
Corrisponde a qualsiasi strumento fornito dal serverpuppeteer
(nome configurato in Claude Code)mcp__puppeteer__puppeteer_navigate
Corrisponde allo strumentopuppeteer_navigate
fornito dal serverpuppeteer
A differenza di altri tipi di permesso, i permessi MCP NON supportano caratteri jolly (*
).
Per approvare tutti gli strumenti da un server MCP:
- ✅ Usa:
mcp__github
(approva TUTTI gli strumenti GitHub) - ❌ Non usare:
mcp__github__*
(i caratteri jolly non sono supportati)
Per approvare solo strumenti specifici, elenca ognuno:
- ✅ Usa:
mcp__github__get_issue
- ✅ Usa:
mcp__github__list_issues
Controllo aggiuntivo dei permessi con hook
Gli hook di Claude Code forniscono un modo per registrare comandi shell personalizzati per eseguire la valutazione dei permessi a runtime. Quando Claude Code effettua una chiamata di strumento, gli hook PreToolUse vengono eseguiti prima che il sistema di permessi venga eseguito, e l’output dell’hook può determinare se approvare o negare la chiamata dello strumento al posto del sistema di permessi.
Impostazioni di policy gestite dall’enterprise
Per le distribuzioni enterprise di Claude Code, supportiamo impostazioni di policy gestite dall’enterprise che hanno precedenza sulle impostazioni utente e progetto. Questo permette agli amministratori di sistema di applicare policy di sicurezza che gli utenti non possono sovrascrivere.
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 delle impostazioni regolari ma non possono essere sovrascritti dalle impostazioni utente o progetto. Questo garantisce policy di sicurezza coerenti in tutta la tua organizzazione.
Precedenza delle impostazioni
Quando esistono più fonti di impostazioni, vengono applicate nel seguente ordine (dalla precedenza più alta alla più bassa):
- Policy enterprise
- Argomenti della riga di comando
- Impostazioni progetto locali (
.claude/settings.local.json
) - Impostazioni progetto condivise (
.claude/settings.json
) - Impostazioni utente (
~/.claude/settings.json
)
Questa gerarchia garantisce che le policy organizzative siano sempre applicate pur consentendo 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 memorizzate nel Keychain macOS crittografato.
- Tipi di autenticazione supportati: Credenziali Claude.ai, credenziali API Anthropic, 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 su risposta HTTP 401. Imposta la variabile d’ambienteCLAUDE_CODE_API_KEY_HELPER_TTL_MS
per intervalli di aggiornamento personalizzati.