Ativando a Reautenticação Forçada
Para forçar um usuário a se autenticar novamente ao acessar um aplicativo, mesmo que uma sessão válida do OCI IAM esteja disponível, defina forceReauthenticateAfterInMinutes
usando o ponto final da API REST.
Para ativar essa funcionalidade, o recurso access.sso.session.max.age
precisa ser ativado.
O OCI IAM mantém o atributo forceReauthenticateAfterInMinutes
no nível do aplicativo. Quando um aplicativo faz uma solicitação de autenticação para o OCI IAM, o serviço avalia se a duração desde a última autenticação excedeu o valor definido no atributo forceReauthenticateAfterInMinutes
desse aplicativo. Se tiver, o OCI IAM forçará o usuário a se autenticar novamente. Por padrão, o valor é NULL e a reautenticação não é imposta.
Valores possíveis para este atributo:
-
NULL (padrão) — Sem reautenticação
-
-1 — Sem reautenticação
-
0 a 32767 — Duração em minutos após a qual um usuário é forçado a se autenticar novamente
Se estiver autenticando com provedores de identidade externos, o OCI IAM tentará impor a reautenticação no IdPs externo.
- Para o OIDC, o OCI IAM passa o atributo max_age na solicitação /authorize.
- Para SAML, com base em AuthNInstant retornado na resposta SAML pelo provedor de identidades externo, o OCI IAM envia uma segunda solicitação SAML para o IdP com
ForceAuthn=true
.
O valor do atributo max_age recebido na solicitação tem precedência sobre o valor forceReauthenticateAfterInMinutes
configurado no nível do aplicativo, mas o protocolo max_age deve ser implementado corretamente para funcionar. Por exemplo, se o IdP não retornar o id_token ou incluir auth_time no id_token, o protocolo max_age não funcionará e seu aplicativo retornará um erro ao tentar acessar. Google e Facebook são exemplos de provedores de identidade que não implementaram o protocolo max_age corretamente a partir de agora.
Quando o OCI IAM é federado em um provedor de identidades externo, o OCI IAM não pode garantir que um usuário seja forçado a se autenticar novamente por um provedor de identidades externo. O comportamento depende de como os protocolos OIDC/SAML são implementados no provedor de identidades externo.
forceReauthenticateAfterInMinutes
no aplicativo.
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}}
}
]
}'