Activation de la réauthentification forcée
Pour forcer un utilisateur à se réauthentifier lors de l'accès à une application, même si une session OCI IAM valide est disponible, définissez forceReauthenticateAfterInMinutes
à l'aide de l'adresse d'API REST.
Pour activer cette fonctionnalité, la fonctionnalité access.sso.session.max.age
doit être activée.
OCI IAM gère l'attribut forceReauthenticateAfterInMinutes
au niveau de l'application. Lorsqu'une application envoie une demande d'authentification à OCI IAM, le service évalue si la durée écoulé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, OCI IAM force l'utilisateur à se réauthentifier. 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 obligé de s'authentifier à nouveau
En cas d'authentification auprès de fournisseurs d'identités externes, OCI IAM tente d'appliquer la réauthentification à l'adresse IdPs externe.
- Pour OIDC, OCI IAM transmet l'attribut max_age dans la demande /authorize.
- Pour SAML, en fonction de AuthNInstant renvoyé 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 est prioritaire sur la valeur forceReauthenticateAfterInMinutes
configurée au niveau de l'application, mais le protocole max_age doit être implémenté correctement pour fonctionner. Par exemple, si IdP ne renvoie pas id_token ou n'inclut pas auth_time dans id_token, le protocole max_age ne fonctionnera pas et l'application renverra une erreur lors de la tentative de connexion. Google et Facebook sont des exemples de fournisseurs d'identités qui n'ont pas correctement implémenté le protocole max_age à ce jour.
Lorsqu'OCI IAM est fédéré vers un fournisseur d'identités externe, OCI IAM ne peut pas garantir si un utilisateur est obligé de se réauthentifier par un fournisseur d'identités externe. Le comportement dépend de la façon dont les protocoles OIDC/SAML sont implémentés au niveau du fournisseur d'identités externe.
forceReauthenticateAfterInMinutes
sur 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}}
}
]
}'