Abilitazione della nuova autenticazione forzata

Per forzare un utente a rieseguire l'autenticazione durante l'accesso a un'applicazione, anche se è disponibile una sessione IAM OCI valida, impostare forceReauthenticateAfterInMinutes utilizzando l'endpoint API REST.

Nota

Per abilitare questa funzionalità, è necessario abilitare la funzione access.sso.session.max.age.

IAM OCI gestisce l'attributo forceReauthenticateAfterInMinutes a livello di applicazione. Quando un'applicazione invia una richiesta di autenticazione a IAM OCI, il servizio valuta se la durata dell'ultima autenticazione ha superato il valore impostato nell'attributo forceReauthenticateAfterInMinutes per tale applicazione. In tal caso, IAM OCI obbliga l'utente a eseguire di nuovo l'autenticazione. Per impostazione predefinita, il valore è NULL e la nuova autenticazione non viene applicata.

Valori possibili per questo attributo:

  • NULL (impostazione predefinita): nessuna nuova autenticazione

  • -1: nessuna nuova autenticazione

  • Da 0 a 32767: durata in minuti dopo la quale un utente è costretto a rieseguire l'autenticazione.

Se si esegue l'autenticazione con provider di identità esterni, IAM OCI tenta di applicare la nuova autenticazione all'indirizzo IdPs esterno.

  • Per OIDC, IAM OCI passa l'attributo max_age nella richiesta /authorize.
  • Per SAML, in base a AuthNInstant restituito nella risposta SAML dal provider di identità esterno, IAM OCI invia una seconda richiesta SAML a IdP con ForceAuthn=true.

Il valore dell'attributo max_age ricevuto nella richiesta ha la precedenza sul valore forceReauthenticateAfterInMinutes configurato a livello di applicazione, ma il protocollo max_age deve essere implementato correttamente per funzionare. Ad esempio, se IdP non restituisce id_token o non include auth_time in id_token, il protocollo max_age non funzionerà e l'applicazione restituirà un errore durante il tentativo di accesso. Google e Facebook sono esempi di provider di identità che finora non hanno implementato correttamente il protocollo max_age.

Nota

Quando IAM OCI è federato a un provider di identità esterno, IAM OCI non può garantire se un utente è costretto a rieseguire l'autenticazione da un provider di identità esterno. Il comportamento dipende dal modo in cui i protocolli OIDC/SAML vengono implementati presso il provider di identità esterno.
Curl per aggiornare l'attributo forceReauthenticateAfterInMinutes nell'applicazione.

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}}
        }
    ]
}'