Skip to content

Authentification

Sécurisez vos requêtes API avec des jetons porteurs JWT.

Vue d'ensemble

CyberOrigen utilise des JSON Web Tokens (JWT) pour l'authentification API. Toutes les requêtes vers les points de terminaison protégés doivent inclure un jeton valide.

Obtenir un jeton

Point de terminaison de connexion

bash
POST /api/v1/auth/token
Content-Type: application/x-www-form-urlencoded

username=[email protected]&password=yourpassword

Réponse

json
{
  "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "token_type": "bearer",
  "expires_in": 3600
}

Exemple cURL

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"

Utilisation des jetons

Incluez le jeton dans l'en-tête Authorization :

bash
curl https://backend.cyberorigen.com/api/v1/scans \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Rafraîchissement du jeton

Les jetons expirent après 1 heure. Rafraîchissez avant l'expiration :

bash
POST /api/v1/auth/refresh
Authorization: Bearer YOUR_CURRENT_TOKEN

Réponse :

json
{
  "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "token_type": "bearer",
  "expires_in": 3600
}

Clés API

Professionnel et Entreprise

Les clés API sont disponibles sur les plans Professionnel et Entreprise.

Pour les systèmes automatisés, utilisez des clés API au lieu des informations d'identification utilisateur :

Créer une clé API

  1. Allez dans Paramètres > Clés API
  2. Cliquez sur Générer une nouvelle clé
  3. Définissez les permissions et l'expiration
  4. Copiez la clé (affichée une seule fois)

Utilisation des clés API

bash
curl https://backend.cyberorigen.com/api/v1/scans \
  -H "X-API-Key: YOUR_API_KEY"

Permissions des clés API

PermissionDescription
read:scansVoir les résultats d'analyse
write:scansCréer et gérer les analyses
read:findingsVoir les découvertes de vulnérabilités
write:findingsMettre à jour le statut des découvertes
read:grcVoir les données GRC
write:grcModifier les contrôles et les preuves

MFA pour l'accès API

Lorsque MFA est activé, les requêtes de jeton initiales nécessitent le code MFA :

bash
POST /api/v1/auth/token
Content-Type: application/x-www-form-urlencoded

username=[email protected]&password=yourpassword&mfa_code=123456

Gestion des sessions

Lister les sessions actives

bash
GET /api/v1/auth/sessions

Révoquer une session

bash
DELETE /api/v1/auth/sessions/{session_id}

Révoquer toutes les sessions

bash
POST /api/v1/auth/logout-all

Bonnes pratiques de sécurité

  1. Ne jamais exposer les jetons dans le code côté client ou le contrôle de version
  2. Utiliser des clés API pour les systèmes automatisés au lieu des informations d'identification utilisateur
  3. Effectuer une rotation régulière des clés API
  4. Définir une expiration appropriée pour les clés API
  5. Utiliser les permissions minimales requises pour votre intégration

Réponses d'erreur

Informations d'identification invalides

json
{
  "detail": "Incorrect email or password",
  "error_code": "INVALID_CREDENTIALS"
}

Jeton expiré

json
{
  "detail": "Token has expired",
  "error_code": "TOKEN_EXPIRED"
}

Jeton invalide

json
{
  "detail": "Could not validate credentials",
  "error_code": "INVALID_TOKEN"
}

MFA requis

json
{
  "detail": "MFA code required",
  "error_code": "MFA_REQUIRED"
}

Updated at:

Agentic AI-Powered Security & Compliance