Paramètres OAuth2 Avancés
Auris supporte quatre fonctionnalités OAuth2 avancées en plus du flux standard Authorization Code + PKCE : Device Authorization Flow, Client-Initiated Backchannel Authentication (CIBA), DPoP (Demonstration of Proof-of-Possession) et Token Exchange. Chaque fonctionnalité est configurée par application et peut être activée indépendamment.
Ces fonctionnalités répondent à des scénarios enterprise comme l’authentification sur des appareils à saisie limitée (smart TV, outils CLI), l’authentification initiée par le serveur (centres d’appels, approbations en kiosque), le chiffrement sender-constraining des tokens et la délégation contrôlée de l’identité.
Accède via Console → Applications → sélectionne une application → onglet Paramètres.
Device Authorization Flow (RFC 8628)
Le Device Authorization Flow permet aux utilisateurs de s’authentifier sur des appareils sans navigateur ou avec des capacités de saisie limitées. L’appareil affiche un code court que l’utilisateur saisit sur un appareil séparé (téléphone ou ordinateur) pour autoriser la session.
Activer le Device Flow
Ouvre les paramètres de l’application
Va dans Console → Applications et clique sur l’application à configurer. Navigue vers l’onglet Paramètres.
Active le Device Flow
Active Activer le Device Flow.
Configure les paramètres
| Paramètre | Défaut | Description |
|---|---|---|
| Intervalle de Polling | 5 secondes | À quelle fréquence l’appareil doit interroger l’endpoint token pour l’état de l’autorisation. Trop bas augmente la charge du serveur. |
| Durée du Code | 600 secondes (10 min) | Combien de temps le code utilisateur reste valide. Après expiration, l’appareil doit demander un nouveau code. |
| Longueur du Code Utilisateur | 8 caractères | Longueur du code affiché à l’utilisateur. Les codes plus longs sont plus sécurisés mais plus difficiles à saisir. |
Sauvegarde
Clique sur Sauvegarder pour appliquer la configuration.
URI de Vérification
Après avoir activé le Device Flow, Auris fournit un URI de Vérification pour ton application. C’est l’URL que tu affiches aux utilisateurs avec le code d’appareil :
https://auth.votre-domaine.com/hosted/deviceTon application pour appareils doit afficher à la fois l’URI de vérification et le code utilisateur, par exemple :
Pour te connecter, visite : https://auth.votre-domaine.com/hosted/device
Saisis le code : ABCD-EFGHL’URI de vérification est le même pour toutes les applications dans ton tenant. Le code utilisateur identifie de manière unique la session d’autorisation de l’appareil, donc aucune URL spécifique à l’application n’est nécessaire.
Comment ça Fonctionne
- L’appareil demande un device code via
POST /api/oauth/device/authorize - L’utilisateur visite l’URI de vérification et saisit le code
- L’utilisateur s’authentifie normalement (mot de passe, MFA, SSO — selon les exigences de ton tenant)
- L’appareil interroge
POST /api/auth/tokenavecgrant_type=urn:ietf:params:oauth:grant-type:device_codejusqu’à ce que l’utilisateur complète l’authentification - Une fois autorisé, l’appareil reçoit des tokens d’accès et de rafraîchissement
/api/oauth/device/authorize/api/auth/tokenClient-Initiated Backchannel Authentication (CIBA)
CIBA permet l’authentification server-to-server où la relying party initie l’authentification sans que l’utilisateur soit présent dans l’application. L’utilisateur reçoit une notification (SMS ou e-mail) et approuve la connexion sur son appareil.
Les cas d’usage typiques incluent l’authentification dans les centres d’appels (“nous avons envoyé une notification sur votre téléphone — approuvez-la pour vérifier votre identité”) et la ré-authentification en arrière-plan pour les sessions de longue durée.
Activer CIBA
Ouvre les paramètres de l’application
Va dans Console → Applications et sélectionne l’application. Navigue vers l’onglet Paramètres.
Active CIBA
Active Activer CIBA.
Configure les paramètres de notification
| Paramètre | Défaut | Description |
|---|---|---|
| Mode de Notification | Poll | Comment la relying party reçoit le résultat de l’authentification. Voir Modes de Notification ci-dessous. |
| Canal de Notification | Comment l’utilisateur est notifié de l’authentification en attente : SMS ou E-mail. | |
| Durée de la Requête | 300 secondes (5 min) | Combien de temps la requête d’authentification est valide avant expiration. |
| Mode de Livraison des Tokens | Poll | Comment le client reçoit les tokens finaux. Options : poll, ping, push. |
Configure l’URL de callback (modes ping/push uniquement)
Si tu utilises le mode de notification ping ou push, saisis l’URL de Callback où Auris doit envoyer le résultat de l’authentification.
Sauvegarde
Clique sur Sauvegarder pour appliquer la configuration.
Modes de Notification
| Mode | Comportement |
|---|---|
| Poll | La relying party interroge l’endpoint token à intervalles jusqu’à ce que l’utilisateur réponde. Le plus simple à implémenter. |
| Ping | Auris envoie une notification à l’URL de callback quand l’utilisateur répond, puis la relying party appelle l’endpoint token pour récupérer les tokens. |
| Push | Auris envoie les tokens directement à l’URL de callback quand l’utilisateur approuve. La relying party n’a pas besoin de faire du polling. |
Le mode Push livre les tokens directement à ton URL de callback. Assure-toi que cet endpoint est protégé par TLS et valide la signature de la requête entrante. Si l’URL de callback est compromise, un attaquant pourrait intercepter les tokens.
/api/oauth/backchannel/authorizeDPoP (Demonstration of Proof-of-Possession) — RFC 9449
DPoP lie les tokens d’accès à un client spécifique en exigeant que le client démontre la possession d’une clé privée à chaque requête. Cela prévient le vol de tokens et les attaques par rejeu — même si un token d’accès est intercepté, il ne peut pas être utilisé sans la clé privée correspondante.
Activer DPoP
Ouvre les paramètres de l’application
Navigue vers Console → Applications → sélectionne l’application → onglet Paramètres.
Active DPoP
Active Activer DPoP.
Configure les paramètres DPoP
| Paramètre | Défaut | Description |
|---|---|---|
| Activer DPoP | Désactivé | Permet aux clients d’utiliser des preuves DPoP lors des demandes de tokens. |
| Exiger DPoP | Désactivé | Quand activé, Auris rejette les requêtes de tokens qui n’incluent pas une preuve DPoP valide. Active seulement après avoir confirmé que tous les clients supportent DPoP. |
| Exiger un Nonce | Désactivé | Ajoute des nonces émis par le serveur au flux DPoP pour la protection contre le rejeu. Augmente la sécurité mais ajoute un aller-retour supplémentaire. |
Sauvegarde
Clique sur Sauvegarder pour appliquer.
Comment Fonctionne DPoP
- Le client génère une paire de clés asymétriques (typiquement ECDSA P-256)
- À chaque requête de token, le client crée un JWT de preuve DPoP signé avec sa clé privée, contenant la méthode HTTP, l’URL et un identifiant unique
- Auris vérifie la preuve et lie le token émis à la clé publique du client (JWK thumbprint)
- Dans les appels API suivants, le client inclut à la fois le token d’accès et un nouvel en-tête de preuve DPoP
- Les serveurs de ressources vérifient que la claim
jkt(JWK Thumbprint) du token correspond à la preuve DPoP
La configuration DPoP apparaît également sur la page de détail de l’application dans la section Sécurité, offrant un accès rapide aux mêmes paramètres depuis plusieurs chemins de navigation.
Token Exchange (RFC 8693)
Le Token Exchange permet à un service d’échanger un token d’accès contre un nouveau token avec des scopes, un sujet ou une audience différents. Il supporte deux patterns : impersonation (agir comme un autre utilisateur) et delegation (agir au nom d’un autre utilisateur tout en conservant l’identité originale).
Activer le Token Exchange
Ouvre les paramètres de l’application
Navigue vers Console → Applications → sélectionne l’application → onglet Paramètres.
Active le Token Exchange
Active Activer le Token Exchange.
Sélectionne les types d’échange autorisés
| Type | Permission Requise | Description |
|---|---|---|
| Impersonation | impersonate:users | Le token résultant a l’utilisateur cible comme sujet. L’identité originale n’est pas préservée. Utilisé pour les scénarios de support admin. |
| Délégation | delegate:tokens | Le token résultant inclut une claim act (actor) qui préserve l’identité originale de l’appelant. Le sujet est l’utilisateur cible. Utilisé pour les chaînes de délégation service-to-service. |
Sauvegarde
Clique sur Sauvegarder pour appliquer.
L’impersonation est une fonctionnalité puissante. Accorde la permission impersonate:users
uniquement aux applications et rôles hautement fiables. Tous les token exchanges sont enregistrés dans le journal
d’audit avec les identités originale et cible.
/api/auth/tokenSurveillance
La Console fournit des pages de surveillance dédiées pour chaque fonctionnalité OAuth2 avancée. Accèdes-y depuis la section OAuth Avancé dans la barre latérale.
Codes d’Appareils
Va dans Console → OAuth Avancé → Codes d’Appareils pour voir toutes les sessions d’autorisation d’appareils actives et expirées.
| Colonne | Description |
|---|---|
| Code Utilisateur | Le code affiché à l’utilisateur |
| Client | L’application ayant demandé le code d’appareil |
| Statut | En Attente, Autorisé, Expiré ou Refusé |
| Créé Le | Quand le code d’appareil a été émis |
| Expire Le | Quand le code d’appareil expire |
| Utilisateur | L’utilisateur ayant autorisé la session (si autorisée) |
Requêtes CIBA
Va dans Console → OAuth Avancé → Requêtes CIBA pour voir les requêtes d’authentification backchannel.
| Colonne | Description |
|---|---|
| ID de Requête | Identifiant unique pour la requête CIBA |
| Utilisateur | L’utilisateur en cours d’authentification |
| Client | L’application ayant initié la requête |
| Statut | En Attente, Complété, Expiré ou Refusé |
| Mode de Notification | Poll, Ping ou Push |
| Créé Le | Quand la requête a été initiée |
Token Exchange
Va dans Console → OAuth Avancé → Token Exchange pour voir le journal d’audit de toutes les opérations de token exchange.
| Colonne | Description |
|---|---|
| Horodatage | Quand l’échange a eu lieu |
| Type | Impersonation ou Délégation |
| Identité Source | L’identité authentifiée originale |
| Identité Cible | L’identité utilisateur cible |
| Client | L’application ayant effectué l’échange |
| Scope | Les scopes accordés sur le token échangé |
Évaluation des Risques
Les fonctionnalités OAuth2 avancées s’intègrent avec le moteur d’évaluation des risques d’Auris. Quand l’évaluation des risques est activée, chaque authentification via Device Flow, CIBA ou Token Exchange est évaluée pour le risque comme une connexion standard. Les authentifications à haut risque peuvent déclencher des exigences MFA step-up.
Pour la configuration détaillée du moteur de risque, des pondérations des facteurs, des seuils et des règles personnalisées, consulte la page dédiée Évaluation des Risques & MFA Adaptatif.
Permissions
Les permissions suivantes contrôlent l’accès aux fonctionnalités OAuth2 avancées :
| Permission | Description |
|---|---|
view:device_codes | Consulte les sessions d’autorisation d’appareils actives |
manage:device_codes | Révoque les codes d’appareils |
view:token_exchanges | Consulte le journal d’audit du token exchange |
impersonate:users | Effectue des token exchanges d’impersonation |
delegate:tokens | Effectue des token exchanges de délégation |
manage:dpop_config | Configure les paramètres DPoP sur les applications |
view:ciba_requests | Consulte les requêtes d’authentification backchannel |
manage:ciba_config | Configure les paramètres CIBA sur les applications |
view:risk_assessments | Consulte les données d’évaluation des risques |
manage:risk_rules | Crée et modifie les règles d’évaluation des risques |
manage:advanced_oauth | Accès complet à tous les paramètres OAuth2 avancés |
Guides Associés
- Évaluation des Risques & MFA Adaptatif — Configure le moteur de risque qui protège tous les flux OAuth2
- Device Authorization Flow — Guide développeur pour implémenter le Device Flow
- Intégration CIBA — Guide développeur pour l’authentification backchannel
- DPoP pour la Sécurité des Tokens — Comment implémenter DPoP dans ton application cliente
- Token Exchange — Guide développeur pour l’impersonation et la délégation
- Applications — Gestion des paramètres d’applications dans la Console