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 ID, de SAML ou de acesso 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ífico. 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 Microsoft Graph PowerShell, estendem o tempo de vida 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, leia Tempos de vida configuráveis.
Configurar políticas de tempo de vida do token (versão prévia)
Pré-requisitos
Para começar, baixe o SDK do PowerShell do Microsoft Graph mais recente.
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 no seu aplicativo da Web. Atribua a política a um aplicativo, que define o tempo de vida dos tokens de acesso/ID como 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 no seu aplicativo da Web. Atribua a política à entidade de serviço, que define o tempo de vida dos tokens de acesso/ID como 8 horas para seu aplicativo Web.
Crie uma política de tempo de vida de 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 }
Atribuir 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" }
Liste as políticas na entidade de serviço.
GET https://graph.microsoft.com/v1.0/servicePrincipals/00001111-aaaa-2222-bbbb-3333cccc4444/tokenLifetimePolicies
Remover 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 criadas na sua organização, execute o cmdlet Get-MgPolicyTokenLifetimePolicy. Todos os resultados com valores de propriedade definidos que diferem dos padrões listados acima estão no escopo da desativação.
Execute o
Get-MgPolicyTokenLifetimePolicy
para ver todas as políticas que foram criadas na organização.Get-MgPolicyTokenLifetimePolicy
Execute List appliesTo com qualquer uma de suas 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