Поделиться через


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

В этой статье объясняется, как настроить политики времени существования маркеров для доступа, SAML или маркеров идентификаторов, выданных платформой удостоверений Майкрософт. Узнайте, как настроить время существования маркеров для всех приложений в организации, определенных приложениях или мультитенантных приложениях для повышения безопасности и управления проверкой подлинности. Возможно, потребуется увеличить время существования маркера, чтобы скрипт выполнялся более часа. Многие библиотеки Майкрософт, такие как пакет SDK Microsoft Graph PowerShell, расширяют время существования маркера по мере необходимости, и вам не нужно вносить изменения в политику маркера доступа. Дополнительные сведения см. в разделе о времени существования настраиваемых маркеров.

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

Чтобы приступить к работе, скачайте последний пакет 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="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

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

На следующих шагах вы создадите политику, которая требует, чтобы пользователи выполняли проверку подлинности реже в веб-приложении. Назначьте политику субъекту-службе, которая задает время существования маркеров доступа и идентификатора в 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/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. Вывод списка политик в субъекте-службе.

    GET https://graph.microsoft.com/v1.0/servicePrincipals/00001111-aaaa-2222-bbbb-3333cccc4444/tokenLifetimePolicies
    
  4. Удалите политику из субъекта-службы.

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

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

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

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

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

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

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