Настройка политик времени существования токена (предварительная версия)

В следующих шагах вы реализуете распространенный сценарий политики, который накладывает новые правила для времени существования токена. Можно указать время существования маркера доступа, SAML или идентификатора, выданного платформа удостоверений Майкрософт. Это можно задать для всех приложений в организации или для конкретного приложения или субъекта. Их также можно задать для нескольких организаций (мультитенантное приложение). Дополнительные сведения см. в разделе о времени существования настраиваемых маркеров.

Необходимые компоненты

Чтобы приступить к работе, скачайте последний пакет SDK Для Microsoft Graph PowerShell.

Создание политики и назначение его приложению

На следующих шагах вы создадите политику, которая требует, чтобы пользователи выполняли проверку подлинности реже в веб-приложении. Назначьте политику приложению, которая задает время существования маркеров доступа и идентификатора в течение 4 часов для веб-приложения.

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="11111111-1111-1111-1111-111111111111"

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

Создайте политику и назначьте ее субъекту-службе

На следующих шагах вы создадите политику, которая требует, чтобы пользователи выполняли проверку подлинности реже в веб-приложении. Назначьте политику субъекту-службе, которая задает время существования маркеров доступа и идентификатора в 8 часов для веб-приложения.

  1. Создайте политику времени жизни маркеров.

    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. Назначьте политику для субъекта-службы.

    POST https://graph.microsoft.com/v1.0/servicePrincipals/11111111-1111-1111-1111-111111111111/tokenLifetimePolicies/$ref
    Content-Type: application/json
    {
      "@odata.id":"https://graph.microsoft.com/v1.0/policies/tokenLifetimePolicies/22222222-2222-2222-2222-222222222222"
    }
    
  3. Вывод списка политик в субъекте-службе.

    GET https://graph.microsoft.com/v1.0/servicePrincipals/11111111-1111-1111-1111-111111111111/tokenLifetimePolicies
    
  4. Удалите политику из субъекта-службы.

    DELETE https://graph.microsoft.com/v1.0/servicePrincipals/11111111-1111-1111-1111-111111111111/tokenLifetimePolicies/22222222-2222-2222-2222-222222222222/$ref
    

Просмотр существующих политик в клиенте

Чтобы просмотреть все политики, созданные в организации, выполните командлет Get-MgPolicyTokenLifetimePolicyPolicy . Результаты, в которых заданные значения свойств отличаются от указанных выше значений по умолчанию, находятся в области прекращения использования.

  1. Запустите команду Get-MgPolicyTokenLifetimePolicy , чтобы просмотреть все политики, созданные в вашей организации.

    Get-MgPolicyTokenLifetimePolicy
    
  2. Список запуска применяется к любому идентификатору политики, чтобы узнать, какие приложения связаны с определенной политикой, которую вы определили.

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

Следующий шаг