Die 3 Keys, die die meisten Deployments benötigen
Beginnen Sie hier. Den vollständigen Berechtigungskatalog weiter unten benötigen Sie nur, wenn Sie einen enger gefassten, benutzerdefiniert abgegrenzten Key brauchen. Siehe auch Empfohlenes Key-Layout und Keys erstellen.
Berechtigungen
Der Server erzwingt einen festen Berechtigungskatalog; jede Berechtigung sichert bestimmte HTTP-Routen ab. Ein Admin-Key besitzt alle davon; ein scoped Key besitzt die Teilmenge, die Sie bei der Erstellung vergeben. Unbekannte Berechtigungs-Strings werden beim Erstellen eines Keys abgelehnt.Hinweis: Zwei gültige Berechtigungen sind ausschließlich für Menschen/das Dashboard bestimmt und können keinem API-Key zugewiesen werden:orgs:admin(Instanz-Administration, die dem Operator vorbehalten ist) undkeys:update. Eine Anfrage anPOST /keysoderPATCH /keys/:id, die versucht, eine dieser Berechtigungen zu vergeben, wird mit HTTP 422 abgelehnt. Warum ein Bearer-Key zwar Keys erstellen, aber nie bearbeiten darf, erläutert die Zeile zukeys:updateweiter unten.
Events: Ingest & Abfrage
Sessions & Evaluierungen
Dashboards
Gespeicherte Abfragen (SQL-Composer)
KI-Assistent
API-Keys
Dashboard-Benutzer
Diese Berechtigungen unterstützen die Users-Seite im Dashboard, auf der die vergebenen Scopes jedes Mitglieds als Chips angezeigt werden:

Betriebliche Einstellungen

Alarme & Vorfälle
Audits
Hinweis: Um einem Key die Audit-Oberfläche zu geben, vergeben Sie audits:* explizit. Wie bestehende Berechtigungsinhaber migriert wurden, als Audits eingeführt wurden, erfahren Sie unter Upgrade- und Abwärtskompatibilitätshinweise.
Der Empfänger-Auswahl-EndpunktGET /alerts/recipients(der die Mitglieds-E-Mail-Adressen auflistet, die ein Alarm-Editor benachrichtigen kann) ist für Inhaber von entwederalerts:readoderalerts:writeerreichbar, sodass Alarm-Editoren die Auswahl befüllen können, ohneusers:readzu benötigen.
Ein Dashboard-Betrachter benötigt sowohldashboards:read(zum Laden der gespeicherten Ansichten) als auchevaluations:read(die Gesundheitsmetriken werden aus Evaluierungsdaten berechnet). Vergeben Siedashboards:write, um einem Benutzer das Erstellen oder Bearbeiten von Dashboards zu erlauben, unddashboards:deletezum Löschen.
/healthund/auth/*(OTP-Anfrage, OTP-Verifizierung, Session-Prüfung, Logout) sind designbedingt nicht authentifiziert; sie sind der Anmeldeablauf und der Liveness-Probe.GET /access-granterserfordert einen gültigen Key, aber keine spezifische Berechtigung, sodass jeder angemeldete Benutzer sehen kann, welche Admins er bei Zugriffsänderungen kontaktieren soll.
Berechtigungs-Sets
Berechtigungs-Sets ermöglichen es Ihnen, eine benannte Rolle anzuwenden, anstatt jedes Mal einzelne Tokens manuell auszuwählen. Anstatt für jeden neuen Dashboard-Benutzer oder API-Key ein Dutzend Berechtigungen einzeln auszuwählen, wählen Sie ein Set, und alle ihm zugeordneten Personen tragen eine konsistente, nachvollziehbare Zuweisung. Das Bearbeiten eines benutzerdefinierten Sets wendet die neue Zuweisung auf jeden bereits zugeordneten Benutzer erneut an, sodass eine Rollenänderung eine einzige Bearbeitung und kein Durchgehen aller Mitglieder ist. Jede Organisation wird mit drei integrierten Sets befüllt:
Die drei integrierten Sets sind unveränderlich; ihre Namen bedeuten immer dasselbe, sodass
read-only, standard und admin sicher in Richtlinien und beim Onboarding referenziert werden können. Ein Operator kann zusätzliche benutzerdefinierte Sets erstellen, um organisationsspezifische Rollen abzubilden (z. B. eine Rolle „Dashboard-Autor” oder eine Rolle „Nur-Collector”).
Sets sind im Dashboard sichtbar und werden über die API verwaltet: GET /permission-sets (auflisten, gesichert durch users:read) sowie POST /permission-sets / PUT /permission-sets/:name / DELETE /permission-sets/:name (benutzerdefiniertes Set erstellen, bearbeiten, löschen, gesichert durch settings:write). Das Löschen oder Bearbeiten eines integrierten Sets wird abgelehnt.
Set-Mitgliedschaft unterstützt zwei weitere Funktionen:
DEFAULT_USER_PERMISSIONS(die Zuweisung, die vorausgewählt ist, wenn ein Admin + neuer Benutzer öffnet) ist standardmäßig auf dasstandard-Set gesetzt.- Das
--set-Flag beiagenteye-orgctl(Operator-Mitgliederverwaltung) startet ein Mitglied mit einem benannten Set, das Sie dann mit--add/--removeverfeinern.
Hinweis: Wenn ein Set eine Berechtigung enthält, die nicht Key-zuweisbar ist (z. B. ein benutzerdefiniertes Set mit keys:update), werden beim Befüllen eines Keys aus diesem Set die nicht zuweisbaren Tokens weggelassen; der Server würde den Key andernfalls mit HTTP 422 ablehnen. Für Dashboard-Benutzer gilt diese Einschränkung nicht.
Bootstrap-Admin-Key
Der Admin-Key ist die einzige Root-Berechtigung, mit der ein Operator den Zugang von Grund auf einrichten kann: Damit können Sie jeden anderen scoped Key erstellen, die ersten Dashboard-Benutzer einladen und die Instanz konfigurieren, bevor ein anderer Key existiert. Es ist der einzige Key, den Sie nicht über die Keys-API erstellen; er wird aus der Umgebung bereitgestellt, damit der Server beim ersten Start erreichbar ist. Setzen Sie die UmgebungsvariableADMIN_KEY auf dem Server. Bei jedem Start führt der Server ein Upsert dieses Werts als Admin-Key mit allen Berechtigungen durch.
Zum Rotieren: Ändern Sie ADMIN_KEY auf ein neues Secret und starten Sie den Server neu.
Organisations-Scoping
Organisationen selbst werden vom Operator außerhalb des Bandes erstellt und verwaltet, nicht über diese Keys-API. Der Lebenszyklus von Organisationen und Mitgliedern (erstellen/umbenennen/löschen/bereinigen einer Org; Mitglied hinzufügen/aktualisieren/entfernen) erfolgt mit deragenteye-orgctl-CLI; dafür gibt es keine HTTP-API oder Dashboard-Schaltfläche. Was unverändert bleibt: Pro-Org-API-Keys werden weiterhin im Dashboard (oder über diese Keys-API) von Org-Mitgliedern erstellt.
In einem Multi-Org-Deployment gehört jeder Key, den ein Org-Mitglied erstellt (über diese Keys-API oder die Dashboard-Keys-Seite), zu einer Organisation und kann ausschließlich die Daten dieser Org lesen oder schreiben; die Org wird beim Erstellen auf den Key gestempelt und bei jeder Anfrage durchgesetzt. Die beiden Bootstrap-Keys sind die einzige Ausnahme: Der admin-Key (befüllt aus ADMIN_KEY) und der dashboard-assistant-Key (befüllt aus AGENT_API_KEY) sind instanzweit gültig (sie tragen keine Org). Das Dashboard authentifiziert sich mit dem admin-Key, damit es Pro-Org-Anfragen im Namen angemeldeter Mitglieder weiterleiten kann. Single-Tenant-Deployments müssen sich darum nicht kümmern; alle Keys gehören zur integrierten default-Org.
Keys erstellen
Verwenden Sie den Admin-Key (oder einen beliebigen Key mit der Berechtigungkeys:create), um weitere scoped Keys zu erstellen.
Collector-Key (nur Ingest)
Dashboard-Key (nur Lesen)
key-Wert selbst an; wählen Sie ein starkes Secret und speichern Sie es sicher. (Im Dashboard funktioniert es umgekehrt: Es generiert ein starkes Secret für Sie und zeigt es einmalig bei der Erstellung an; siehe Key-Verwaltung im Dashboard.) Die Antwort bestätigt, dass der Key erstellt wurde:
Keys auflisten
Einen Key deaktivieren
Das Deaktivieren widerruft den Zugriff sofort, ohne den Key-Datensatz zu löschen.Einen Key neu generieren
Generiert ein neues Secret für einen vorhandenen Key. Das alte Secret wird sofort ungültig.Key-Verwaltung im Dashboard
Die Keys-Seite im Dashboard bietet eine Benutzeroberfläche für alle oben genannten Operationen. Sie benötigen einen Key mit der Berechtigungkeys:read, um die Liste anzuzeigen, sowie keys:create / keys:update / keys:disable / keys:regenerate für die Aktionen Erstellen / Bearbeiten / Deaktivieren / Neu generieren. Das Bearbeiten der Berechtigungen eines Keys (keys:update) ist vom Erstellen eines Keys (keys:create) getrennt, sodass Sie einem Operator die Möglichkeit geben können, Keys zu erstellen, ohne bestehende neu zu scopieren – oder umgekehrt. Der Admin-Key deckt all diese Bereiche ab.
Wenn Sie einen Key im Dashboard erstellen, geben Sie das Secret nicht selbst an; das Dashboard generiert ein starkes Secret für Sie und zeigt es einmalig bei der Erstellung an. Kopieren Sie es sofort und speichern Sie es sicher; es wird nie wieder angezeigt – genau wie beim Neu-Generieren. Sie können die Berechtigungen des Keys trotzdem direkt auswählen oder sie aus einem Berechtigungs-Set übernehmen (siehe unten).

Empfohlenes Key-Layout
Hinweis: Der Key des Assistenten wird automatisch vom Server aus der UmgebungsvariableAGENT_API_KEYbefüllt (dasselbe Secret, das der Agent alsAGENTEYE_API_KEYpräsentiert); es gibt keinen manuellen Key-Erstellungsschritt und keinen Admin-Key dabei. Seine Berechtigungen sind im Quellcode festgelegt, sodass der Scope nicht durch Fehlkonfiguration erweitert werden kann: Lesezugriff auf Events/Evaluierungen/Dashboards, plus Dashboards-write und Queries-read/write/run für den Authoring-Flow „KI nach einer Abfrage fragen”. Sämtliches SQL durchläuft weiterhin dieselbe Read-only-Rolle und denselben gesicherten SQL-Pfad wie eine benutzerverfasste Abfrage, sodass dies die Authoring-Oberfläche, nicht die Datenoberfläche erweitert; destruktive Operationen (queries:delete,dashboards:delete) bleiben bewusst vom Assistenten-Key ausgeschlossen. Wie deradmin-Key ist er geschützt: Er kann nicht über die Keys-API deaktiviert oder neu generiert werden, sondern nur durch Ändern vonAGENT_API_KEYund Neustart rotiert werden. Dashboard-Benutzer benötigen zusätzlich die Berechtigungagent:use, um den Assistenten zu sehen und zu nutzen. Wenn Sie die Selbst-Instrumentierung aktivieren, geben Sie dem Assistenten einen separaten Key, der nurevents:addenthält.
Upgrade- und Abwärtskompatibilitätshinweise
Diese Hinweise sind nur relevant, wenn Sie eine bestehende Instanz aktualisieren; neue Deployments können sie überspringen.Als Audits eingeführt wurden, wurden bestehende Berechtigungsinhaber entsprechend denselben Rollenformen wie bei Alarmen erweitert: Jeder Benutzer und jedes Berechtigungs-Set, dasalerts:readenthielt, erhieltaudits:read; jeder Inhaber vonalerts:writeerhieltaudits:write. Bestehende API-Keys wurden nicht erweitert. Vergeben Sieaudits:*explizit an einen Key, wenn er die Audit-Oberfläche benötigt.
Gespeicherte Zuweisungen des veralteten Tokensalerts:ackwerden alsincidents:ackgeparst, sodass On-Caller den Zugriff ohne erneute Key-Ausgabe behalten. Das Token ist im Benutzer-Editor des Dashboards nicht mehr zuweisbar; die Matrix bietet stattdessenincidents:ackan.
Nächste Schritte
- Python SDK: Wie Ihr Agent-Code sich beim Senden von Events authentifiziert.
- Security: Wie Anmeldung, Zugriffskontrolle und organisationsweite Datenisolierung funktionieren.

