Authentication
Sichern Sie Ihre API-Anfragen mit JWT Bearer Tokens.
Übersicht
CyberOrigen verwendet JSON Web Tokens (JWT) für die API-Authentifizierung. Alle Anfragen an geschützte Endpunkte müssen ein gültiges Token enthalten.
Token erhalten
Login Endpunkt
bash
POST /api/v1/auth/token
Content-Type: application/x-www-form-urlencoded
username=[email protected]&password=yourpasswordAntwort
json
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"token_type": "bearer",
"expires_in": 3600
}cURL Beispiel
bash
curl -X POST https://backend.cyberorigen.com/api/v1/auth/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "[email protected]&password=yourpassword"Tokens verwenden
Fügen Sie das Token im Authorization Header hinzu:
bash
curl https://backend.cyberorigen.com/api/v1/scans \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"Token Aktualisierung
Tokens laufen nach 1 Stunde ab. Aktualisieren Sie sie vor Ablauf:
bash
POST /api/v1/auth/refresh
Authorization: Bearer YOUR_CURRENT_TOKENAntwort:
json
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"token_type": "bearer",
"expires_in": 3600
}API Keys
Professional und Enterprise
API Keys sind in den Professional und Enterprise Tarifen verfügbar.
Für automatisierte Systeme verwenden Sie API Keys anstelle von Benutzerdaten:
API Key erstellen
- Gehen Sie zu Einstellungen > API Keys
- Klicken Sie auf Neuen Key generieren
- Legen Sie Berechtigungen und Ablaufdatum fest
- Kopieren Sie den Key (wird nur einmal angezeigt)
API Keys verwenden
bash
curl https://backend.cyberorigen.com/api/v1/scans \
-H "X-API-Key: YOUR_API_KEY"API Key Berechtigungen
| Berechtigung | Beschreibung |
|---|---|
read:scans | Scan-Ergebnisse ansehen |
write:scans | Scans erstellen und verwalten |
read:findings | Schwachstellen ansehen |
write:findings | Schwachstellen-Status aktualisieren |
read:grc | GRC-Daten ansehen |
write:grc | Controls und Nachweise ändern |
MFA für API-Zugriff
Wenn MFA aktiviert ist, erfordern initiale Token-Anfragen den MFA-Code:
bash
POST /api/v1/auth/token
Content-Type: application/x-www-form-urlencoded
username=[email protected]&password=yourpassword&mfa_code=123456Session-Verwaltung
Aktive Sessions auflisten
bash
GET /api/v1/auth/sessionsSession widerrufen
bash
DELETE /api/v1/auth/sessions/{session_id}Alle Sessions widerrufen
bash
POST /api/v1/auth/logout-allSicherheits-Best Practices
- Tokens niemals offenlegen in clientseitigem Code oder Versionskontrolle
- API Keys verwenden für automatisierte Systeme statt Benutzerdaten
- API Keys regelmäßig rotieren
- Angemessenes Ablaufdatum für API Keys festlegen
- Minimale Berechtigungen verwenden, die für Ihre Integration erforderlich sind
Fehlerantworten
Ungültige Zugangsdaten
json
{
"detail": "Incorrect email or password",
"error_code": "INVALID_CREDENTIALS"
}Abgelaufenes Token
json
{
"detail": "Token has expired",
"error_code": "TOKEN_EXPIRED"
}Ungültiges Token
json
{
"detail": "Could not validate credentials",
"error_code": "INVALID_TOKEN"
}MFA erforderlich
json
{
"detail": "MFA code required",
"error_code": "MFA_REQUIRED"
}