Zugangsdaten

Im Bereich Anmeldedaten geben Sie einer Maschine (im Einstellungseditor ein Arbeitsbereich) die Geheimnisse, die ihr Agent braucht — Git-Tokens, SSH-Schlüssel, Cloud-Zugangsdaten, Datenbankpasswörter —, ohne dass diese Geheimnisse je in die VM gelangen. Jeder Wert wird verschlüsselt auf Ihrem Mac gespeichert. In der VM sieht der Agent nur einen Platzhalter (zum Beispiel brm_…); verlässt eine Anfrage Ihren Mac, ersetzt der Proxy den Platzhalter durch den echten Wert, und zwar nur für die Hosts, zu denen dieses Zugangsdatum gehört.

Diese Seite ist die Referenz Feld für Feld. Der Mechanismus — die Übertragungsgrenze, Platzhalter, Host-Beschränkung, AWS-Neusignierung, der Kompromittierungsalarm — wird unter Zugangsdaten & die Übertragungsgrenze erklärt. Ob ein Zugangsdatum vor der Verwendung Ihre Genehmigung braucht und welche Schreibvorgänge es ausführen darf, legen Sie unter Schutzmechanismen fest.

Der Bereich Anmeldedaten: Git-Identität mit den Platzhaltern Ihr Name und you@example.com und der Beschriftung Wird in ~/.gitconfig der VM geschrieben, ein leerer Zustand mit Noch keine Anmeldedaten sowie die Schaltflächen Anmeldedaten hinzufügen und env-Datei importieren…

Hinweis: API-Schlüssel und Anmeldungen für die Modellanbieter der Coding-Agenten (Anthropic, OpenAI, xAI, Moonshot, z.ai, Bedrock, OpenRouter, eigene Server) werden nicht hier eingestellt. Sie liegen unter Einstellungen › Modelle oder in der eigenen Modelle-Überschreibung einer Maschine.

Git-Identität

Die beiden Felder oben legen die Autorenidentität fest, die in ~/.gitconfig in der VM geschrieben wird:

„Wird in ~/.gitconfig der VM geschrieben. Beide Felder leer lassen, um die git-Standardwerte zu behalten.“ Das sind keine Geheimnisse, und sie werden nicht getauscht. Änderungen gelten für eine laufende Maschine beim Sichern.

Importierte Konfigurationsdateien

Hat die Ersteinrichtung Konfigurationsdateien von Ihrem Mac in diese Maschine importiert, erscheinen sie unter Importierte Konfigurationsdateien: jede als ~/<pfad>, mit der Anzahl ihrer Einstellungen, der Anzahl ausgelassener Geheimnisse und den deaktivierten Einstellungen. „Werden unverändert in die VM kopiert. Geheimnisse bleiben außen vor – die kommen oben als Anmeldedaten an, sodass die VM nur eine Attrappe sieht.“ Die Minus-Schaltfläche entfernt eine Datei aus der Maschine.

Die Liste der Zugangsdaten

Darunter listet der Bereich nur die Zugangsdaten, die diese Maschine tatsächlich hat, unter Kategorie-Überschriften:

ÜberschriftWas darunter erscheint
GITPersönliche Zugriffstokens für GitHub, GitLab, Bitbucket oder selbst gehostete Forges.
CLOUDAWS, DigitalOcean, Linear, Twilio, Kubernetes-Kontexte, Container-Registries.
DATABASESMongoDB-, ClickHouse- und Elasticsearch-Endpunkte.
SSHDer eigene Schlüssel der Maschine und alle importierten Schlüssel.
OTHERTauschregeln vom Typ „Other API key“.

Jede Zeile zeigt ein Symbol, einen Namen und den oder die Hosts, für die das Zugangsdatum gilt. Ihr Menü ⋯ (oder ein Klick auf die Zeile) bietet Bearbeiten… und Entfernen. Von der Festplatte wird erst etwas entfernt, wenn Sie auf Sichern klicken.

Eine Gruppe AGENTS kann ebenfalls erscheinen, auf Maschinen, die noch einen eigenen Agenten-API-Schlüssel aus der Zeit haben, bevor die Modellanbieter nach Modelle umgezogen sind. Diese Zeilen haben kein Entfernen; ihr Menü bietet In „Modelle“ bearbeiten…, was Einstellungen › Modelle öffnet (in den Einstellungen selbst oder im Editor einer entfernten Maschine wechselt es zum Bereich Modelle dieses Editors).

Ohne Zugangsdaten zeigt der Bereich Noch keine Anmeldedaten — „Fügen Sie einen API-Schlüssel, ein Token oder einen SSH-Schlüssel hinzu — oder importieren Sie eine env-Datei. Die echten Werte bleiben auf Ihrem Mac; die VM erhält immer nur einen Platzhalter.“

Ein Zugangsdatum hinzufügen

Anmeldedaten hinzufügen öffnet eine Liste von Zugangsdatentypen; jeder öffnet ein eigenes Bearbeitungs-Sheet, das mit Fertig geschlossen wird:

TypUntertitel
Git tokenPersönliches Zugriffstoken für GitHub, GitLab oder Bitbucket
SSH keyEinen privaten Schlüssel importieren oder den Schlüssel des Arbeitsbereichs verwenden
AWS credentialsStatische IAM-Schlüssel oder SSO — auf der Leitung mit SigV4 signiert
DigitalOcean tokenPersönliches Zugriffstoken für doctl / API
Linear API keyPersönlicher Linear-API-Schlüssel
Twilio API keyKonto-/API-Key-SID + Geheimnis — HTTP Basic auf der Leitung
KubernetesEin Cluster-Kontext (Token, Client-Zertifikat oder Exec-Plugin)
Container registryRegistry-Anmeldung für Docker Hub, ghcr.io und andere
DatabaseMongoDB Data API, ClickHouse oder Elasticsearch
Other API keyJedes andere Token — Sie wählen Umgebungsvariable und Host(s)

Agenten-API-Schlüssel (Anthropic, OpenAI, xAI, Moonshot) stehen nicht in dieser Liste: Sie werden unter Einstellungen › Modelle eingestellt.

Eine env-Datei importieren

env-Datei importieren… liest Zugangsdaten aus einer vorhandenen .env-Datei oder einer ~/.bashrc. Der Parser liest Zeilen der Form KEY=VALUE und export KEY=VALUE, entfernt Anführungszeichen und # Kommentare am Zeilenende und behält bei wiederholten Namen die letzte Zuweisung. Er führt nie eine Shell aus: Ein Wert, der eine Expansion bräuchte ($VAR, $(…)), wird übersprungen statt falsch importiert, sodass eine echte .bashrc gefahrlos verwendet werden kann.

Die Variablen erscheinen in einem Prüf-Sheet, Import from Dateiname, mit jedem Wert maskiert.

Variablen unter ERKANNT werden einem Zugangsdatentyp zugeordnet:

Variable(n)Wird zu
GH_TOKEN, GITHUB_TOKENGitHub-Token (fragt nach einem Git-Benutzername)
GITLAB_TOKEN, GLAB_TOKENGitLab-Token (fragt nach einem Git-Benutzername)
AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKENStatische AWS-Schlüssel
DIGITALOCEAN_ACCESS_TOKEN, DIGITALOCEAN_TOKEN, DO_TOKENDigitalOcean-Token
LINEAR_API_KEYLinear-API-Schlüssel
TWILIO_ACCOUNT_SID, TWILIO_API_KEY_SID, TWILIO_API_KEYTwilio-SID
TWILIO_AUTH_TOKEN, TWILIO_API_SECRET, TWILIO_API_KEY_SECRETTwilio-Geheimnis
ANTHROPIC_API_KEY, OPENAI_API_KEY, XAI_API_KEY, MOONSHOT_API_KEY, KIMI_API_KEYDer API-Schlüssel des passenden Anbieters in den Modelleinstellungen: Anthropic, OpenAI, xAI oder Moonshot

Agentenschlüssel landen dort, wo Agenten die Schlüssel ihrer Anbieter beziehen. Auf diesem Mac kommen sie nach Einstellungen › Modelle, sodass jede Maschine, die die globalen Einstellungen übernimmt, sie erhält, und sie werden sofort beim Import gesichert, wie jede Änderung auf diesem Board. Bei einer entfernten Maschine, die aus einem Spiegelfenster bearbeitet wird, gehen sie in deren eigene Modelle-Überschreibung und werden mit Sichern gesichert; in den Einstellungen eines entfernten Macs in dessen globale Einstellungen. Ein Schlüssel wird als Already configured markiert, wenn der Anbieter bereits einen hat.

Eine Variable, die zu etwas passt, das die Maschine schon hat, wird als Already configured — check to overwrite. markiert und bleibt abgewählt, damit ein erneuter Import nie stillschweigend ein Geheimnis ersetzt.

Variablen unter NICHT ERKANNT lassen sich als Einträge vom Typ Other API key importieren. Jeder hat ein Feld Host(s) — die Hosts, auf denen der Platzhalter getauscht wird, durch Kommas getrennt; leer bedeutet jeder Host. Der Variablenname wird sowohl zum Namen des Eintrags als auch zur Variable, unter der der Platzhalter exportiert wird.

Ein Wert, der eine 1Password-Referenz ist (op://vault/item/field), wird als Other API key importiert, der die Referenz speichert, nicht das Geheimnis (siehe Weitere API-Schlüssel).

Die Schaltfläche lautet Import N credentials. Der Import fügt die Auswahl dem Bereich hinzu; klicken Sie auf Sichern, um sie zu behalten.

SSH-Schlüssel

Private Schlüssel gelangen nie in die VM: Signaturen liefert ein ssh-agent auf dem Mac über einen privaten virtuellen Socket, sodass die VM eine Signatur anfordern, den Schlüssel aber nicht lesen kann.

  • Der eigene ed25519-Schlüssel der Maschine. Bei neuen Maschinen ist ed25519-Schlüsselpaar erzeugen angehakt (es sei denn, die Standardvorlage liefert bereits einen Schlüssel). Existiert ein Schlüssel, zeigt der Editor seinen öffentlichen Schlüssel mit Kopieren und GitHub-Schlüsselseite öffnen sowie einen Schalter Neu erzeugen. Direkt nach dem Erzeugen eines neuen Schlüssels zeigt die App ihn an, damit Sie ihn bei GitHub hinzufügen können.
  • Importierte SSH-Schlüssel. Importieren… öffnet eine Dateiauswahl und fragt dann nach einer Bezeichnung und, falls der Schlüssel verschlüsselt ist, nach einer Passphrase (im macOS-Schlüsselbund gespeichert). RSA-, ed25519- und ecdsa-Schlüssel werden unterstützt.
  • Schlüssel aus einem Host-Agenten. Vom Host-Agenten… listet die Schlüssel, die ein ssh-agent auf Ihrem Mac hält — für Schlüssel, die sich nicht als Datei kopieren lassen, etwa ein YubiKey hinter gpg-agent, Secretive oder 1Password. Wählen Sie den Socket des Agenten (leer bedeutet das SSH_AUTH_SOCK der App; das Menü bietet die auf diesem Mac gefundenen Agenten an, z. B. ~/.gnupg/S.gpg-agent.ssh), klicken Sie auf Laden und haken Sie die hinzuzufügenden Schlüssel an. Nur diese Schlüssel werden der Maschine gezeigt.

Änderungen an SSH-Schlüsseln gelten, wenn die Maschine neu startet.

Git-Token (GitHub, GitLab, Bitbucket)

Aufgeteilt in die Gruppen GitHub, GitLab und Bitbucket. Token hinzufügen fügt eine Zeile mit Host, Benutzername und Persönlicher Zugriffstoken hinzu (mit einer Schaltfläche zum Anzeigen und einem Link zur Token-Seite der Forge). Der Host kann auf github.com, gitlab.com oder eine selbst gehostete Instanz zeigen. Der Platzhalter wird in ~/.git-credentials und in die Konfiguration von gh / glab geschrieben; gh und glab lesen außerdem GH_TOKEN / GITLAB_TOKEN.

Linear

Ein persönlicher API-Schlüssel (Platzhalter in der Form lin_api_…, mit einem Link zu den API-Einstellungen von Linear). Exportiert als LINEAR_API_KEY und nur bei Anfragen an linear.app und seine Subdomains getauscht. Einen Linear-Schlüssel brauchen auch von Linear ausgelöste Automatisierungen.

Twilio

„Account SID + Auth Token from console.twilio.com (or an API Key SID SK… + its secret).“ Zwei Felder:

  • Account SID (AC…) or API Key SID (SK…) — die SID ist eine Kennung, die in Anfrage-URLs mitreist, und gilt daher nicht als geheim; die VM erhält sie unverändert in TWILIO_ACCOUNT_SID.
  • Auth Token / API Key secret — die VM erhält einen Platzhalter in TWILIO_AUTH_TOKEN; der Proxy setzt bei Anfragen an twilio.com den echten ein.

Eine Schaltfläche neben dem Geheimnis öffnet die Twilio Console. Der Editor hat außerdem das Kontrollkästchen Verwendung bestätigen lassen, dasselbe, das Schutzmechanismen für jedes Zugangsdatum zeigt.

Kubernetes

Eine Zeile pro Cluster-Kontext. Bromure schreibt in der VM eine ~/.kube/config, die kubectl auf den Proxy verweist; die echte Identität bleibt auf dem Mac. Jeder Kontext hat einen Namen, eine Server-URL, ein optionales CA-Zertifikat (PEM), einen Namespace und eine Authentifizierungsmethode:

  • Bearer-Token — auf der Leitung getauscht.
  • Client-Zertifikat — das echte Zertifikat und der Schlüssel werden vom Mac für die Upstream-Verbindung verwendet; die VM erhält ein Wegwerf-Exemplar.
  • Exec-Plugin — ein Befehl, Args und ein Intervall Aktualisieren (1–60 Minuten). Das Plugin läuft auf dem Mac, und das frische Token wird eingetauscht; kubectl in der VM führt es nie aus.

Datei importieren… liest eine vorhandene kubeconfig in eine Zeile pro Kontext ein; Kontext hinzufügen fügt einen von Hand hinzu. Cluster, die Sie mit Bromure selbst erstellen, werden getrennt behandelt — siehe Kubernetes-Cluster und Registries. Ein Kontext, der bei laufender Maschine hinzugefügt oder bearbeitet wird, funktioniert ab Sichern, samt CA und Client-Zertifikat seines Clusters; die App bietet trotzdem einen Neustart an.

DigitalOcean

Ein persönliches Zugriffstoken (Platzhalter in der Form dop_v1_…). Exportiert als DIGITALOCEAN_ACCESS_TOKEN und in die Konfiguration von doctl geschrieben, sodass doctl auth init nicht nötig ist. Getauscht bei Anfragen an digitalocean.com, einschließlich der Basic-Auth-Form, die docker login / doctl registry login gegenüber registry.digitalocean.com verwenden.

AWS

Für die aws-CLI, die SDKs, terraform und ähnliche Werkzeuge. Das echte Geheimnis erreicht die VM nie: Der Mac signiert jede Anfrage mit dem echten Schlüssel neu, und eine Anfrage, die den Proxy umgeht, wird von AWS abgewiesen (InvalidSignatureException). Ein Steuerelement Authentifizierungsmethode wählt:

  • Statische Schlüssel — Access Key ID, Secret Access Key, ein optionales Session-Token („Optional — nur STS“) und eine Standardregion, mit IAM-Anmeldedaten-Seite öffnen.
  • SSO / Identity Center — gewähren Sie Zugriff auf Ihren Ordner ~/.aws und wählen Sie dann ein SSO-Profil aus Ihrer ~/.aws/config. Temporäre Zugangsdaten werden auf dem Mac geholt, der bei Bedarf aws sso login in Ihrem Browser ausführt. (Im Client für iPhone, iPad und Vision Pro tippen Sie stattdessen den Profilnamen ein.)

Die AWS-Zugangsdaten einer Maschine signieren auch Anfragen an Amazon Bedrock, wenn Bedrock in Modelle ohne Bedrock-API-Schlüssel aktiviert ist. AWS-Änderungen gelten, wenn die Maschine neu startet.

Container-Registries

Anmeldungen pro Registry für docker pull / docker push. Die ~/.docker/config.json der VM enthält einen Platzhalter, und der Proxy setzt bei Anfragen an diese Registry das echte Passwort ein. Das Menü Hinzufügen bietet Docker Hub (docker.io), GitHub Container Registry (ghcr.io), GitLab Container Registry (registry.gitlab.com), Quay (quay.io), Anderer Host… und config.json importieren… (Einträge, deren Passwort in einem Credential-Helper oder Schlüsselbund liegt, werden übersprungen und gezählt). Jede Zeile hat einen Host, einen Benutzername und ein Passwort oder Token.

Datenbanken (MongoDB, ClickHouse, Elasticsearch)

Eine Zeile pro HTTPS-Endpunkt, nach Engine gruppiert. Jede hat einen optionalen Name, einen Host (der auch die Schreibrichtlinie des Endpunkts eingrenzt), eine Methode unter Authentifizierung — Username + password, API-Schlüssel oder Bearer-Token (MongoDB nutzt standardmäßig API-Schlüssel, die anderen Benutzername + Passwort) —, einen Benutzername für die Passwort-Authentifizierung, das Secret und Umgebungsvariable(n): die durch Kommas getrennten Namen, unter denen der Platzhalter exportiert wird. Der Platzhalter wird überall getauscht, wo er auftaucht — Header, Query-String oder Body.

Sonstige API-Schlüssel

Für jeden Dienst, den Bromure nicht selbst behandelt. Jeder Eintrag ist eine Tauschregel:

  • Name — eine Bezeichnung für Sie (Platzhalter „e.g. Stripe (sandbox)“).
  • Echtes Geheimnis — der Schlüssel (Platzhalter sk_live_…). Sie können stattdessen eine 1Password-Referenz einfügen (op://vault/item/field): Nur die Referenz wird gespeichert, und Bromure holt das Geheimnis beim Start mit der 1Password-CLI op und aktualisiert es alle 2 Minuten. Ein Link 1Password CLI herunterladen hilft, falls sie nicht installiert ist.
  • Umgebungsvariable — wo der Agent den Platzhalter findet (Platzhalter STRIPE_API_KEY). Leer lassen, um nichts zu exportieren.
  • API host(s) (optional) — Hostnamen, durch Kommas getrennt, ohne https:// oder Pfad. Der echte Schlüssel wird nur bei Anfragen an diese Hosts und ihre Subdomains eingetauscht. Leer erlaubt jeden Host.

Warnung: Ein Eintrag ohne Host wird auf jedem Host eingetauscht und ist nicht vom Kompromittierungsalarm abgedeckt — genau das bedeutet „jeder Host“. Um ein nicht eingegrenztes Geheimnis unter Kontrolle zu halten, geben Sie ihm einen Host oder schalten Sie dafür Verwendung bestätigen lassen unter Schutzmechanismen ein.

OpenShell-Anbieterprofile

Auf einer Maschine, deren Sandbox-Engine OpenShell + Sentry ist, endet der Bereich mit einem Abschnitt OpenShell provider profiles (nur auf dem Mac).

Attach provider profile… importiert ein OpenShell-Anbieterprofil (das YAML oder JSON, das openshell profile export schreibt). Ein Blatt fragt nach einem Instance name (standardmäßig die ID des Profils) und einem Wert für jedes Zugangsmittel des Profils (Pflichtfelder sind mit * markiert); Attach fügt sie hinzu. Jeder Wert wird zu Zugangsdaten dieser Maschine namens Instanz · Zugangsmittel, gebunden an die Hosts und Pfade des Profils, unter den Umgebungsvariablen, die das Profil nennt. Die Endpunkte des Profils werden als Regel hinzugefügt, damit sie erreichbar sind. Bromure behält die echten Werte auf dem Mac und gibt der VM Ersatzwerte, wie bei allen Zugangsdaten. Die Papierkorb-Schaltfläche löst ein Profil und entfernt seine Zugangsdaten. Ein Profil ohne Endpunkte wird abgewiesen, da seine Zugangsdaten nirgends benutzt werden könnten. Zugangsdaten, die sich per refresh erneuern oder einen token_grant nutzen, werden als der statische Wert verwendet, den Sie eingeben.

Use OpenShell credential placeholders (standardmäßig aus) lässt den Agenten in seiner Umgebung openshell:resolve:env:NAME statt Bromures echt aussehender Tokens sehen, für die Zugangsdaten, die diese Maschine als Umgebungsvariablen übergibt — so, wie es unter OpenShell wäre. Der Proxy setzt den echten Wert in Request-Headern ein, und in Request-Bodies oder WebSocket-Nachrichten nur dort, wo ein Endpunkt request_body_credential_rewrite oder websocket_credential_rewrite setzt. Alle Zugangsdaten funktionieren weiterhin nur auf ihren eigenen Hosts. Zugangsdaten, die in einem anderen Format gesendet werden (Git- und Registry-Anmeldungen, Abo-Anmeldungen), behalten Bromures Ersatzwerte. Manche Werkzeuge prüfen das Format eines Tokens und lehnen einen Platzhalter womöglich ab. Wirkt ab dem nächsten VM-Start.

Wann Änderungen gelten

Git-Identität, Git-Tokens, Linear, Twilio, DigitalOcean, Container-Registries, Datenbanken und weitere API-Schlüssel gelten für eine laufende Maschine beim Sichern. SSH-Schlüssel und AWS-Zugangsdaten brauchen einen Neustart; die App bietet ihn beim Sichern an. Kubernetes-Kontexte funktionieren beim Sichern, und die App bietet ebenfalls einen Neustart an. OpenShell-Zugangsdaten-Platzhalter wirken ab dem nächsten VM-Start.

Alles in diesem Bereich wird in der verschlüsselten secrets.enc der Maschine gespeichert, nie in profile.json.

Einstellungsreferenz

EditorWas er enthält
Git-Identitätuser.name / user.email für ~/.gitconfig; nicht geheim.
SSH keyDer Schlüssel der Maschine und importierte Schlüssel; vom ssh-agent des Macs bedient.
Git tokenBenutzername und Token pro Host für GitHub, GitLab, Bitbucket.
Linear API keyLINEAR_API_KEY, getauscht auf linear.app.
Twilio API keyTWILIO_ACCOUNT_SID unverändert, TWILIO_AUTH_TOKEN als Platzhalter, getauscht auf twilio.com.
KubernetesKontexte (Token, Client-Zertifikat, Exec-Plugin).
DigitalOcean tokenDIGITALOCEAN_ACCESS_TOKEN und doctl-Konfiguration.
AWS credentialsStatische Schlüssel oder SSO; der Mac signiert Anfragen neu. Signiert auch Bedrock.
Container registryAnmeldungen pro Registry; Platzhalter in ~/.docker/config.json.
DatabaseGeheimnis pro Endpunkt, exportiert unter den Variablen, die Sie nennen.
Other API keyGeheimnis oder 1Password-Referenz, Variable, optionale Hosts.
env-Datei importieren…Massenimport aus .env oder ~/.bashrc.

Verwandte Kapitel