Configurare i criteri di durata dei token (anteprima)

Nei passaggi seguenti si implementerà uno scenario di criteri comuni che impone nuove regole per la durata dei token. È possibile specificare la durata di un token di accesso, SAML o ID rilasciato da Microsoft Identity Platform. Questa impostazione può essere impostata per tutte le app dell'organizzazione o per un'app o un'entità di sicurezza specifica. Possono anche essere impostati per più organizzazioni (applicazione multi-tenant). È possibile aumentare la durata del token in modo che uno script venga eseguito per più di un'ora. Molte librerie Microsoft, ad esempio Microsoft Graph PowerShell SDK, estendono la durata del token in base alle esigenze e non è necessario apportare modifiche ai criteri del token di accesso. Per altre informazioni, vedere Durata dei token configurabili.

Prerequisiti

Per iniziare, scaricare la versione più recente di Microsoft Graph PowerShell SDK.

Creare un criterio e assegnarlo a un'app

Nei passaggi seguenti si creerà un criterio che richiede agli utenti di eseguire l'autenticazione meno frequentemente nell'app Web. Assegnare il criterio a un'app, che imposta la durata dei token di accesso/ID su 4 ore per l'app Web.

Install-Module Microsoft.Graph

Connect-MgGraph -Scopes  "Policy.ReadWrite.ApplicationConfiguration","Policy.Read.All","Application.ReadWrite.All"

# Create a token lifetime policy
$params = @{
  Definition = @('{"TokenLifetimePolicy":{"Version":1,"AccessTokenLifetime":"4:00:00"}}') 
    DisplayName = "WebPolicyScenario"
  IsOrganizationDefault = $false
}
$tokenLifetimePolicyId=(New-MgPolicyTokenLifetimePolicy -BodyParameter $params).Id

# Display the policy
Get-MgPolicyTokenLifetimePolicy -TokenLifetimePolicyId $tokenLifetimePolicyId

# Assign the token lifetime policy to an app
$params = @{
  "@odata.id" = "https://graph.microsoft.com/v1.0/policies/tokenLifetimePolicies/$tokenLifetimePolicyId"
}

$applicationObjectId="aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb"

New-MgApplicationTokenLifetimePolicyByRef -ApplicationId $applicationObjectId -BodyParameter $params

# List the token lifetime policy on the app
Get-MgApplicationTokenLifetimePolicy -ApplicationId $applicationObjectId

# Remove the policy from the app
Remove-MgApplicationTokenLifetimePolicyByRef -ApplicationId $applicationObjectId -TokenLifetimePolicyId $tokenLifetimePolicyId

# Delete the policy
Remove-MgPolicyTokenLifetimePolicy -TokenLifetimePolicyId $tokenLifetimePolicyId

Creare un criterio e assegnarlo a un'entità servizio

Nei passaggi seguenti si creerà un criterio che richiede agli utenti di eseguire l'autenticazione meno frequentemente nell'app Web. Assegnare il criterio all'entità servizio, che imposta la durata dei token di accesso/ID su 8 ore per l'app Web.

  1. Creare i criteri per la durata dei token.

    POST https://graph.microsoft.com/v1.0/policies/tokenLifetimePolicies
    Content-Type: application/json
    {
        "definition": [
            "{\"TokenLifetimePolicy\":{\"Version\":1,\"AccessTokenLifetime\":\"8:00:00\"}}"
        ],
        "displayName": "Contoso token lifetime policy",
        "isOrganizationDefault": false
    }
    
  2. Assegnare i criteri a un'entità servizio.

    POST https://graph.microsoft.com/v1.0/servicePrincipals/00001111-aaaa-2222-bbbb-3333cccc4444/tokenLifetimePolicies/$ref
    Content-Type: application/json
    {
      "@odata.id":"https://graph.microsoft.com/v1.0/policies/tokenLifetimePolicies/00aa00aa-bb11-cc22-dd33-44ee44ee44ee"
    }
    
  3. Elencare i criteri nell'entità servizio.

    GET https://graph.microsoft.com/v1.0/servicePrincipals/00001111-aaaa-2222-bbbb-3333cccc4444/tokenLifetimePolicies
    
  4. Rimuovere i criteri dall'entità servizio.

    DELETE https://graph.microsoft.com/v1.0/servicePrincipals/00001111-aaaa-2222-bbbb-3333cccc4444/tokenLifetimePolicies/00aa00aa-bb11-cc22-dd33-44ee44ee44ee/$ref
    

Visualizzare i criteri esistenti in un tenant

Per visualizzare tutti i criteri creati nell'organizzazione, eseguire il cmdlet Get-MgPolicyTokenLifetimePolicy . I risultati con valori di proprietà definiti che differiscono dai valori predefiniti elencati in precedenza rientrano nell'ambito del ritiro.

  1. Get-MgPolicyTokenLifetimePolicy Eseguire per visualizzare tutti i criteri creati nell'organizzazione.

    Get-MgPolicyTokenLifetimePolicy
    
  2. Run List si applica a uno qualsiasi degli ID dei criteri per vedere quali app sono collegate a un criterio specifico identificato.

    GET https://graph.microsoft.com/v1.0/policies/tokenLifetimePolicies/4d2f137b-e8a9-46da-a5c3-cc85b2b840a4/appliesTo
    

Passaggio successivo