Activation de la réauthentification forcée
Pour forcer un utilisateur à s'authentifier de nouveau lors de l'accès à une application, même si une session IAM OCI valide est disponible, définissez forceReauthenticateAfterInMinutes
à l'aide du point d'extrémité de l'API REST.
Pour activer cette fonctionnalité, la fonction access.sso.session.max.age
doit être activée.
Le service IAM pour OCI tient à jour l'attribut forceReauthenticateAfterInMinutes
au niveau de l'application. Lorsqu'une application soumet une demande d'authentification au service IAM pour OCI, le service évalue si la durée depuis la dernière authentification a dépassé la valeur définie dans l'attribut forceReauthenticateAfterInMinutes
pour cette application. Si tel est le cas, le service IAM pour OCI force l'utilisateur à s'authentifier de nouveau. Par défaut, la valeur est NULL et la réauthentification n'est pas appliquée.
Valeurs possibles pour cet attribut :
-
NULL (par défaut) - Aucune réauthentification
-
-1-Aucune réauthentification
-
0 à 32767-Durée en minutes après laquelle un utilisateur est forcé de s'authentifier de nouveau
En cas d'authentification auprès de fournisseurs d'identités externes, le service IAM d'OCI tente d'appliquer la réauthentification à l'adresse IdPs externe.
- Pour OIDC, le service IAM pour OCI transmet l'attribut max_age dans la demande /authorize.
- Pour SAML, basé sur AuthNInstant retourné dans la réponse SAML par le fournisseur d'identités externe, OCI IAM envoie une deuxième demande SAML à IdP avec
ForceAuthn=true
.
La valeur d'attribut max_age reçue dans la demande a priorité sur la valeur forceReauthenticateAfterInMinutes
configurée au niveau de l'application, mais le protocole max_age doit être mis en oeuvre correctement pour fonctionner. Par exemple, si IdP ne retourne pas id_token ou n'inclut pas auth_time dans id_token, le protocole max_age ne fonctionnera pas et votre application retournera une erreur lors de la tentative de connexion. Google et Facebook sont des exemples de fournisseurs d'identités qui n'ont pas mis en œuvre le protocole max_age correctement à ce jour.
Lorsque le service IAM pour OCI est fédéré vers un fournisseur d'identités externe, le service IAM pour OCI ne peut pas garantir qu'un utilisateur est forcé de s'authentifier de nouveau par un fournisseur d'identités externe. Le comportement dépend de la façon dont les protocoles OIDC/SAML sont mis en oeuvre auprès du fournisseur d'identités externe.
forceReauthenticateAfterInMinutes
dans l'application.
curl --location --request PATCH 'https://{{IDCS_HOST}}/admin/v1/Apps/{{APP_ID}}' --header 'X-RESOURCE-IDENTITY-DOMAIN-NAME: tenantsp' --header 'Authorization: Bearer {{IDENTITY_DOMAIN_ADMINSTRATOR_TOKEN}}' --header 'Content-Type: application/json' --data-raw '{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:PatchOp"
],
"Operations": [
{
"op": "add",
"path": "forceReauthenticateAfterInMinutes",
"value": {{value}}
}
]
}'