Zum Hauptinhalt springen
Gilt für:
DuoKey CockpitREST APIEntwickler-Integration

Zwei Oberflächen​

Das Cockpit stellt zwei Arten von HTTP-Oberflächen bereit:

OberflächeBasispfadWer sie aufruft
Management-API/api/…Ihre Integrationen und die Cockpit-Konsole — authentifiziert mit einem Bearer-Token
Öffentliche ProtokollendpunkteRoot-Pfade wie /dke/…, /ocsp/…, /scep/…, .well-known/est/…Standardclients, die ein öffentliches Protokoll sprechen (Microsoft 365, ACME-/EST-/SCEP-/CMP-Clients, OCSP-Responder)

Die Basis-URL ist Ihr Cockpit-Host, zum Beispiel https://cockpit.example.com. Alle folgenden Beispiele verwenden Pfade relativ zu diesem Host.

Authentifizierung​

Management-API-Aufrufe tragen ein Bearer-Token im Authorization-Header:

Hinweis

Authorization: Bearer <access-token>

Siehe Authentifizierung, um zu erfahren, wie ein Token beschafft wird und wie Sitzungen funktionieren. Öffentliche Protokollendpunkte verwenden die im jeweiligen Standard definierte Authentifizierung (zum Beispiel ein Azure-AD-Token für DKE-Entschlüsselung oder ACME-Kontoschlüssel).

Mandantenfähigkeit​

Jede Anfrage läuft im Sicherheitskontext des im Token kodierten Mandanten — Sie übergeben nie explizit eine Mandanten-ID und sehen und ändern nur die Daten Ihres eigenen Mandanten. Einige administrative Endpunkte sind hostbezogen (mandantenübergreifend) und erfordern ein Host-Token; diese sind auf der Seite Plattformadministration gekennzeichnet.

Berechtigungen​

Aktionen werden durch rollenbasierte Berechtigungen gesteuert. Ein Aufrufer muss die von einer Route geforderte Berechtigung besitzen (zum Beispiel eine Berechtigung zur Zertifikatsausstellung, um ein Zertifikat auszustellen). Berechtigungsnamen sind nach Bereich gruppiert (Plattformoperationen, PKI, Hostadministration usw.) und werden pro Endpunkt auf jeder API-Seite aufgeführt.

Konventionen​

AspektKonvention
FormatJSON-Anfrage- und Antwortkörper; UTF-8
BezeichnerRessourcen-IDs sind UUIDs
MethodenStandard-REST: GET (lesen), POST (erstellen/Aktion), PUT/PATCH (aktualisieren), DELETE (entfernen)
ZeitstempelISO 8601 (UTC)
Auth-HeaderAuthorization: Bearer <token>

Fehlermodell​

Fehler liefern einen Nicht-2xx-HTTP-Status mit einem JSON-Körper, der das Problem beschreibt. Häufige Statuscodes:

StatusBedeutung
400 Bad RequestFehlerhafte Anfrage oder fehlgeschlagene Validierung
401 UnauthorizedFehlendes oder ungültiges Token
403 ForbiddenAuthentifiziert, aber ohne die erforderliche Berechtigung (oder Funktion für die Edition nicht aktiviert)
404 Not FoundKeine solche Ressource in Ihrem Mandanten
409 ConflictStatuskonflikt (z. B. ein bereits verwendeter Name)
429 Too Many RequestsRatenlimit überschritten

API-Abschnitte​