Configurar políticas de tempo de vida do token (visualização)

Nas etapas a seguir, você implementará um cenário de política comum que impõe novas regras para o tempo de vida do token. É possível especificar o tempo de vida de um token de acesso, SAML ou ID emitido pela plataforma de identidade da Microsoft. Isso pode ser definido para todos os aplicativos em sua organização ou para um aplicativo ou entidade de segurança específica. Eles também podem ser definidos para várias organizações (aplicativo multilocatário). Talvez você queira aumentar o tempo de vida do token para que um script seja executado por mais de uma hora. Muitas bibliotecas da Microsoft, como o SDK do PowerShell do Microsoft Graph, estendem a vida útil do token conforme necessário e você não precisa fazer alterações na política de token de acesso. Para obter mais informações, consulte Tempos de vida de token configuráveis.

Pré-requisitos

Para começar, baixe o SDK mais recente do Microsoft Graph PowerShell.

Criar uma política e atribuí-la a um aplicativo

Nas etapas a seguir, você criará uma política que exige que os usuários se autentiquem com menos frequência em seu aplicativo Web. Atribua a política a um aplicativo, que define o tempo de vida dos tokens de acesso/ID para 4 horas para seu aplicativo 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

Criar uma política e atribuí-la a uma entidade de serviço

Nas etapas a seguir, você criará uma política que exige que os usuários se autentiquem com menos frequência em seu aplicativo Web. Atribua a política à entidade de serviço, que define o tempo de vida dos tokens de acesso/ID para 8 horas para seu aplicativo Web.

  1. Crie uma política de tempo de vida do 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. Atribua a política a uma entidade de serviço.

    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. Liste as políticas na entidade de serviço.

    GET https://graph.microsoft.com/v1.0/servicePrincipals/00001111-aaaa-2222-bbbb-3333cccc4444/tokenLifetimePolicies
    
  4. Remova a política da entidade de serviço.

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

Exibir políticas existentes em um locatário

Para ver todas as políticas que foram criadas em sua organização, execute o cmdlet Get-MgPolicyTokenLifetimePolicy . Quaisquer resultados com valores de propriedade definidos que diferem dos padrões listados acima estão no escopo da aposentadoria.

  1. Execute o Get-MgPolicyTokenLifetimePolicy para ver todas as políticas que foram criadas na sua organização.

    Get-MgPolicyTokenLifetimePolicy
    
  2. Executar Lista aplica-se a qualquer um dos seus IDs de política para ver quais aplicativos estão vinculados a uma política específica que você identificou.

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

Próximo passo