Authentifizierungsmethoden

Die Einrichtung von Claude Code erfordert Zugriff auf Anthropic-Modelle. Für Teams können Sie den Claude Code-Zugriff auf eine von drei Arten einrichten:

  • Anthropic API über die Anthropic Console
  • Amazon Bedrock
  • Google Vertex AI

Anthropic API-Authentifizierung

So richten Sie Claude Code-Zugriff für Ihr Team über die Anthropic API ein:

  1. Verwenden Sie Ihr bestehendes Anthropic Console-Konto oder erstellen Sie ein neues Anthropic Console-Konto
  2. Sie können Benutzer über eine der folgenden Methoden hinzufügen:
    • Masseneinladung von Benutzern innerhalb der Console (Console -> Einstellungen -> Mitglieder -> Einladen)
    • SSO einrichten
  3. Beim Einladen von Benutzern benötigen diese eine der folgenden Rollen:
    • Die Rolle “Claude Code” bedeutet, dass Benutzer nur Claude Code API-Schlüssel erstellen können
    • Die Rolle “Developer” bedeutet, dass Benutzer jede Art von API-Schlüssel erstellen können
  4. Jeder eingeladene Benutzer muss diese Schritte ausführen:

Cloud-Provider-Authentifizierung

So richten Sie Claude Code-Zugriff für Ihr Team über Bedrock oder Vertex ein:

  1. Folgen Sie der Bedrock-Dokumentation oder Vertex-Dokumentation
  2. Verteilen Sie die Umgebungsvariablen und Anweisungen zur Generierung von Cloud-Anmeldedaten an Ihre Benutzer. Lesen Sie mehr darüber, wie Sie die Konfiguration hier verwalten.
  3. Benutzer können Claude Code installieren

Zugriffskontrolle und Berechtigungen

Wir unterstützen feingliedrige Berechtigungen, sodass Sie genau spezifizieren können, was der Agent tun darf (z.B. Tests ausführen, Linter ausführen) und was er nicht tun darf (z.B. Cloud-Infrastruktur aktualisieren). Diese Berechtigungseinstellungen können in die Versionskontrolle eingecheckt und an alle Entwickler in Ihrer Organisation verteilt sowie von einzelnen Entwicklern angepasst werden.

Berechtigungssystem

Claude Code verwendet ein gestuftes Berechtigungssystem, um Macht und Sicherheit auszubalancieren:

Tool-TypBeispielGenehmigung erforderlich”Ja, nicht mehr fragen”-Verhalten
Nur-LesenDatei-Lesevorgänge, LS, GrepNeinN/A
Bash-BefehleShell-AusführungJaDauerhaft pro Projektverzeichnis und Befehl
Datei-ÄnderungDateien bearbeiten/schreibenJaBis zum Sitzungsende

Berechtigungen konfigurieren

Sie können Claude Codes Tool-Berechtigungen mit /permissions anzeigen und verwalten. Diese Benutzeroberfläche listet alle Berechtigungsregeln und die settings.json-Datei auf, aus der sie stammen.

  • Allow-Regeln erlauben Claude Code, das angegebene Tool ohne weitere manuelle Genehmigung zu verwenden.
  • Ask-Regeln fragen den Benutzer um Bestätigung, wann immer Claude Code versucht, das angegebene Tool zu verwenden. Ask-Regeln haben Vorrang vor Allow-Regeln.
  • Deny-Regeln verhindern, dass Claude Code das angegebene Tool verwendet. Deny-Regeln haben Vorrang vor Allow- und Ask-Regeln.
  • Zusätzliche Verzeichnisse erweitern Claudes Dateizugriff auf Verzeichnisse jenseits des ursprünglichen Arbeitsverzeichnisses.
  • Standardmodus steuert Claudes Berechtigungsverhalten beim Antreffen neuer Anfragen.

Berechtigungsregeln verwenden das Format: Tool oder Tool(optionaler-Spezifizierer)

Eine Regel, die nur der Tool-Name ist, passt zu jeder Verwendung dieses Tools. Zum Beispiel würde das Hinzufügen von Bash zur Liste der Allow-Regeln Claude Code erlauben, das Bash-Tool ohne Benutzergenehmigung zu verwenden.

Berechtigungsmodi

Claude Code unterstützt mehrere Berechtigungsmodi, die als defaultMode in Einstellungsdateien gesetzt werden können:

ModusBeschreibung
defaultStandardverhalten - fragt bei der ersten Verwendung jedes Tools nach Berechtigung
acceptEditsAkzeptiert automatisch Dateibearbeitungsberechtigungen für die Sitzung
planPlanmodus - Claude kann analysieren, aber keine Dateien ändern oder Befehle ausführen
bypassPermissionsÜberspringt alle Berechtigungsaufforderungen (erfordert sichere Umgebung - siehe Warnung unten)

Arbeitsverzeichnisse

Standardmäßig hat Claude Zugriff auf Dateien in dem Verzeichnis, in dem es gestartet wurde. Sie können diesen Zugriff erweitern:

  • Beim Start: Verwenden Sie das CLI-Argument --add-dir <pfad>
  • Während der Sitzung: Verwenden Sie den Slash-Befehl /add-dir
  • Persistente Konfiguration: Fügen Sie zu additionalDirectories in Einstellungsdateien hinzu

Dateien in zusätzlichen Verzeichnissen folgen denselben Berechtigungsregeln wie das ursprüngliche Arbeitsverzeichnis - sie werden ohne Aufforderungen lesbar, und Dateibearbeitungsberechtigungen folgen dem aktuellen Berechtigungsmodus.

Tool-spezifische Berechtigungsregeln

Einige Tools unterstützen feingliedrigere Berechtigungskontrollen:

Bash

  • Bash(npm run build) Passt zum exakten Bash-Befehl npm run build
  • Bash(npm run test:*) Passt zu Bash-Befehlen, die mit npm run test beginnen
  • Bash(curl http://site.com/:*) Passt zu curl-Befehlen, die genau mit curl http://site.com/ beginnen

Claude Code ist sich Shell-Operatoren (wie &&) bewusst, sodass eine Präfix-Match-Regel wie Bash(safe-cmd:*) ihm keine Berechtigung gibt, den Befehl safe-cmd && other-cmd auszuführen

Wichtige Einschränkungen von Bash-Berechtigungsmustern:

  1. Dieses Tool verwendet Präfix-Matches, keine Regex- oder Glob-Muster
  2. Der Platzhalter :* funktioniert nur am Ende eines Musters, um jede Fortsetzung zu matchen
  3. Muster wie Bash(curl http://github.com/:*) können auf viele Arten umgangen werden:
    • Optionen vor URL: curl -X GET http://github.com/... wird nicht matchen
    • Anderes Protokoll: curl https://github.com/... wird nicht matchen
    • Weiterleitungen: curl -L http://bit.ly/xyz (leitet zu github weiter)
    • Variablen: URL=http://github.com && curl $URL wird nicht matchen
    • Zusätzliche Leerzeichen: curl http://github.com wird nicht matchen

Für zuverlässigere URL-Filterung erwägen Sie:

  • Das WebFetch-Tool mit WebFetch(domain:github.com)-Berechtigung zu verwenden
  • Claude Code über Ihre erlaubten curl-Muster via CLAUDE.md zu instruieren
  • Hooks für benutzerdefinierte Berechtigungsvalidierung zu verwenden

Read & Edit

Edit-Regeln gelten für alle eingebauten Tools, die Dateien bearbeiten. Claude wird einen Best-Effort-Versuch unternehmen, Read-Regeln auf alle eingebauten Tools anzuwenden, die Dateien lesen, wie Grep, Glob und LS.

Read- und Edit-Regeln folgen beide der gitignore-Spezifikation mit vier verschiedenen Mustertypen:

MusterBedeutungBeispielPasst zu
//pfadAbsoluter Pfad vom Dateisystem-RootRead(//Users/alice/secrets/**)/Users/alice/secrets/**
~/pfadPfad vom Home-VerzeichnisRead(~/Documents/*.pdf)/Users/alice/Documents/*.pdf
/pfadPfad relativ zur EinstellungsdateiEdit(/src/**/*.ts)<Einstellungsdatei-Pfad>/src/**/*.ts
pfad oder ./pfadPfad relativ zum aktuellen VerzeichnisRead(*.env)<cwd>/*.env

Ein Muster wie /Users/alice/file ist KEIN absoluter Pfad - es ist relativ zu Ihrer Einstellungsdatei! Verwenden Sie //Users/alice/file für absolute Pfade.

  • Edit(/docs/**) - Bearbeitungen in <projekt>/docs/ (NICHT /docs/!)
  • Read(~/.zshrc) - Liest die .zshrc Ihres Home-Verzeichnisses
  • Edit(//tmp/scratch.txt) - Bearbeitet den absoluten Pfad /tmp/scratch.txt
  • Read(src/**) - Liest aus <aktuelles-verzeichnis>/src/

WebFetch

  • WebFetch(domain:example.com) Passt zu Fetch-Anfragen an example.com

MCP

  • mcp__puppeteer Passt zu jedem Tool, das vom puppeteer-Server bereitgestellt wird (Name in Claude Code konfiguriert)
  • mcp__puppeteer__puppeteer_navigate Passt zum puppeteer_navigate-Tool, das vom puppeteer-Server bereitgestellt wird

Im Gegensatz zu anderen Berechtigungstypen unterstützen MCP-Berechtigungen KEINE Platzhalter (*).

Um alle Tools von einem MCP-Server zu genehmigen:

  • ✅ Verwenden Sie: mcp__github (genehmigt ALLE GitHub-Tools)
  • ❌ Verwenden Sie nicht: mcp__github__* (Platzhalter werden nicht unterstützt)

Um nur spezifische Tools zu genehmigen, listen Sie jedes einzeln auf:

  • ✅ Verwenden Sie: mcp__github__get_issue
  • ✅ Verwenden Sie: mcp__github__list_issues

Zusätzliche Berechtigungskontrolle mit Hooks

Claude Code Hooks bieten eine Möglichkeit, benutzerdefinierte Shell-Befehle zu registrieren, um Berechtigungsevaluierung zur Laufzeit durchzuführen. Wenn Claude Code einen Tool-Aufruf macht, laufen PreToolUse-Hooks vor dem Berechtigungssystem, und die Hook-Ausgabe kann bestimmen, ob der Tool-Aufruf anstelle des Berechtigungssystems genehmigt oder abgelehnt wird.

Enterprise-verwaltete Richtlinieneinstellungen

Für Enterprise-Bereitstellungen von Claude Code unterstützen wir Enterprise-verwaltete Richtlinieneinstellungen, die Vorrang vor Benutzer- und Projekteinstellungen haben. Dies ermöglicht es Systemadministratoren, Sicherheitsrichtlinien durchzusetzen, die Benutzer nicht überschreiben können.

Systemadministratoren können Richtlinien bereitstellen an:

  • macOS: /Library/Application Support/ClaudeCode/managed-settings.json
  • Linux und WSL: /etc/claude-code/managed-settings.json
  • Windows: C:\ProgramData\ClaudeCode\managed-settings.json

Diese Richtliniendateien folgen demselben Format wie reguläre Einstellungsdateien, können aber nicht von Benutzer- oder Projekteinstellungen überschrieben werden. Dies gewährleistet konsistente Sicherheitsrichtlinien in Ihrer Organisation.

Einstellungsrangfolge

Wenn mehrere Einstellungsquellen existieren, werden sie in der folgenden Reihenfolge angewendet (höchste zu niedrigste Priorität):

  1. Enterprise-Richtlinien
  2. Befehlszeilenargumente
  3. Lokale Projekteinstellungen (.claude/settings.local.json)
  4. Geteilte Projekteinstellungen (.claude/settings.json)
  5. Benutzereinstellungen (~/.claude/settings.json)

Diese Hierarchie stellt sicher, dass Organisationsrichtlinien immer durchgesetzt werden, während dennoch Flexibilität auf Projekt- und Benutzerebene ermöglicht wird, wo angemessen.

Anmeldedatenverwaltung

Claude Code verwaltet Ihre Authentifizierungsanmeldedaten sicher:

  • Speicherort: Auf macOS werden API-Schlüssel, OAuth-Token und andere Anmeldedaten im verschlüsselten macOS Keychain gespeichert.
  • Unterstützte Authentifizierungstypen: Claude.ai-Anmeldedaten, Anthropic API-Anmeldedaten, Bedrock Auth und Vertex Auth.
  • Benutzerdefinierte Anmeldedaten-Skripte: Die apiKeyHelper-Einstellung kann konfiguriert werden, um ein Shell-Skript auszuführen, das einen API-Schlüssel zurückgibt.
  • Aktualisierungsintervalle: Standardmäßig wird apiKeyHelper nach 5 Minuten oder bei HTTP 401-Antwort aufgerufen. Setzen Sie die Umgebungsvariable CLAUDE_CODE_API_KEY_HELPER_TTL_MS für benutzerdefinierte Aktualisierungsintervalle.