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


Отключение автоматического ускорения входа

В этой статье вы узнаете, как отключить функцию ускоренного входа для определенных доменов и приложений с помощью политики выбора домашней области (HRD). С помощью этой политики администраторы могут гарантировать, что пользователи всегда используют свои управляемые учетные данные, повышая безопасность и обеспечивая согласованный вход.

Политика обнаружения домашней области (HRD) предлагает администраторам несколько способов управления способами проверки подлинности пользователей. Раздел domainHintPolicy политики HRD используется для миграции федеративных пользователей в облачные управляемые учетные данные, такие как FIDO, гарантируя, что они всегда посещают страницу входа Microsoft Entra и не автоматически ускоряются в федеративный поставщик удостоверений из-за подсказок домена. Дополнительные сведения о политике обнаружения домашней области см. в разделе Обнаружение домашней области.

Эта политика необходима в ситуациях, когда администраторы не могут контролировать или обновлять указания домена во время входа. Например, outlook.com/contoso.com отправляет пользователя на страницу входа с &domain_hint=contoso.com добавленным параметром, чтобы автоматически ускорить пользователя непосредственно в федеративный поставщик удостоверений для contoso.com домена. Пользователи с управляемыми учетными данными, отправляемыми в федеративный IDP, не могут войти в систему с использованием своих управляемых учетных данных, что негативно влияет на безопасность и затрудняет вход пользователей в систему. Администраторы, развертывающие управляемые учетные данные, также должны настроить эту политику, чтобы пользователи всегда могли использовать свои управляемые учетные данные.

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

Чтобы отключить автоматический вход для приложения в идентификаторе Microsoft Entra, вам потребуется:

  • Учетная запись Azure с активной подпиской. Если ее нет, можно создать учетную запись бесплатно.
  • Одна из следующих ролей: администратор облачных приложений, администратор приложений или владелец субъекта-службы.

Настройка HRD для предотвращения подсказок домена с помощью Microsoft Graph PowerShell

Администраторы федеративных доменов должны настроить этот раздел политики обнаружения домашней области в рамках четырехэтапного плана. Цель этого плана состоит в том, чтобы все пользователи в арендаторе использовали свои управляемые учетные данные независимо от домена или приложения, кроме приложений с жесткими зависимостями от использования domain_hint. Этот план помогает администраторам найти эти приложения, исключить их из новой политики и продолжить развертывание изменений в остальной части клиента.

Выберите домен для изначального развертывания этого изменения. Этот домен — это тестовый домен, поэтому выберите его, который может оказаться более восприимчивым к изменениям в пользовательском интерфейсе (например, на другой странице входа). В следующем примере настроено игнорировать все указания домена из всех приложений, использующих это доменное имя. Задайте эту политику в политике обнаружения домашней области клиента по умолчанию:

Выполните команду Connect, чтобы войти в идентификатор Microsoft Entra по крайней мере с ролью администратора приложений:

connect-MgGraph -scopes "Policy.ReadWrite.ApplicationConfiguration"
  1. Выполните следующую команду, чтобы предотвратить подсказки домена для тестового домена.

    # Define the Home Realm Discovery Policy parameters  
    $params = @{
    definition = @(
        '{
            "HomeRealmDiscoveryPolicy": {
                "DomainHintPolicy": {
                    "IgnoreDomainHintForDomains": ["federated.example.edu"],
                    "RespectDomainHintForDomains": [],
                    "IgnoreDomainHintForApps": [],
                    "RespectDomainHintForApps": []
                }
            }
        }'
    )
    displayName = "Home Realm Discovery Domain Hint Exclusion Policy"
    isOrganizationDefault = $true
    }
    
    # Define the Home Realm Discovery Policy ID (ensure this is set to a valid ID)  
    $homeRealmDiscoveryPolicyId = "<Your-Policy-ID-Here>"  # Replace with your actual policy ID  
    
    # Update the policy to ignore domain hints for the specified domains  
    Update-MgPolicyHomeRealmDiscoveryPolicy -HomeRealmDiscoveryPolicyId $homeRealmDiscoveryPolicyId -BodyParameter $params  
    

    Убедитесь, что заменили app-client-Guid фактическими идентификаторами GUID приложения, а значение заполнителя - на фактический домен.

  2. Соберите отзывы от пользователей тестового домена. Собирайте сведения о приложениях, которые были нарушены в результате этого изменения, — они имеют зависимость от использования указания домена и должны быть обновлены. Пока добавьте их в раздел RespectDomainHintForApps:

    # Define the Home Realm Discovery Policy parameters
    $params = @{
    definition = @(
        '{
            "HomeRealmDiscoveryPolicy": {
                "DomainHintPolicy": {
                    "IgnoreDomainHintForDomains": ["federated.example.edu"],
                    "RespectDomainHintForDomains": [],
                    "IgnoreDomainHintForApps": [],
                    "RespectDomainHintForApps": ["app1-clientID-Guid", "app2-clientID-Guid"]
                }
            }
        }'
    )
    displayName = "Home Realm Discovery Domain Hint Exclusion Policy"
    isOrganizationDefault = $true
    }
    # Define the Home Realm Discovery Policy ID (ensure this is set to a valid ID)  
    $homeRealmDiscoveryPolicyId = "<Your-Policy-ID-Here>"  # Replace with your actual policy ID  
    
    # Update the policy to ignore domain hints for the specified domains  
    Update-MgPolicyHomeRealmDiscoveryPolicy -HomeRealmDiscoveryPolicyId $homeRealmDiscoveryPolicyId -BodyParameter $params
    

    Убедитесь, что вы заменили app-client-Guid на фактические GUID приложения, а значение заполнителя на фактический домен.

  3. Продолжайте расширение развертывания политики в новых доменах и сбор дополнительных отзывов.

    # Define the Home Realm Discovery Policy parameters  
    $params = @{
    definition = @(
        '{
            "HomeRealmDiscoveryPolicy": {
                "DomainHintPolicy": {
                    "IgnoreDomainHintForDomains": ["federated.example.edu", "otherDomain.com", "anotherDomain.com"],
                    "RespectDomainHintForDomains": [],
                    "IgnoreDomainHintForApps": [],
                    "RespectDomainHintForApps": ["app1-clientID-Guid", "app2-clientID-Guid"]
                }
            }
        }'
    )
    displayName = "Home Realm Discovery Domain Hint Exclusion Policy"
    isOrganizationDefault = $true
    }
    
    # Define the Home Realm Discovery Policy ID (ensure this is set to a valid ID)  
    $homeRealmDiscoveryPolicyId = "<Your-Policy-ID-Here>"  # Replace with your actual policy ID  
    
    # Update the policy to ignore domain hints for the specified domains  
    Update-MgPolicyHomeRealmDiscoveryPolicy -HomeRealmDiscoveryPolicyId $homeRealmDiscoveryPolicyId -BodyParameter $params
    

    Убедитесь, что заменили app-client-Guid на фактические GUIDы приложения, а значение заполнителя — на фактический домен.

  4. Завершите развертывание — включите в политику все домены, исключая те, для которых по-прежнему требуется ускорение:

    $params = @{
    definition = @(
        '{
            "HomeRealmDiscoveryPolicy": {
                "DomainHintPolicy": {
                    "IgnoreDomainHintForDomains": ["*"],
                    "RespectDomainHintForDomains": ["guestHandlingDomain.com"],
                    "IgnoreDomainHintForApps": [],
                    "RespectDomainHintForApps": ["app1-clientID-Guid", "app2-clientID-Guid"]
                }
            }
        }'
    )
    displayName = "Home Realm Discovery Domain Hint Exclusion Policy"
    isOrganizationDefault = $true
    }  
    
    # Define the Home Realm Discovery Policy ID (ensure this is set to a valid ID)  
    $homeRealmDiscoveryPolicyId = "<Your-Policy-ID-Here>"  # Replace with your actual policy ID  
    
    # Update the policy to ignore domain hints for the specified domains  
    Update-MgPolicyHomeRealmDiscoveryPolicy -HomeRealmDiscoveryPolicyId $homeRealmDiscoveryPolicyId -BodyParameter $params
    

    Убедитесь, что app-client-Guid заменено фактическими идентификаторами GUID приложения, а значение заполнителя — фактическим доменом.

Настройка HRD для предотвращения подсказок домена с помощью Microsoft Graph

Администраторы федеративных доменов должны настроить этот раздел политики обнаружения домашней области в рамках четырехэтапного плана. Цель этого плана состоит в том, чтобы все пользователи в арендаторе использовали свои управляемые учетные данные независимо от домена или приложения, кроме приложений с жесткими зависимостями от использования domain_hint. Этот план помогает администраторам найти эти приложения, исключить их из новой политики и продолжить развертывание изменений в остальной части клиента.

В окне обозревателя Microsoft Graph войдите по крайней мере с ролью администратора приложений .

Предоставьте согласие на разрешение Policy.ReadWrite.ApplicationConfiguration.

  1. Выберите домен для изначального развертывания этого изменения. Этот домен — это тестовый домен, поэтому выберите его, который может оказаться более восприимчивым к изменениям в пользовательском интерфейсе (например, на другой странице входа). Это игнорирует все указания домена из всех приложений, использующих это доменное имя. Установите эту политику в политике HRD по умолчанию для арендатора. Создайте новое правило, используя POST, или обновите существующее правило с помощью PATCH.

    PATCH https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies/{homeRealmDiscoveryPolicyId} 
        {  
    "definition": [  
        "{\"HomeRealmDiscoveryPolicy\":{\"IgnoreDomainHintForDomains\":[\"testDomain.com\"],\"RespectDomainHintForDomains\":[],\"IgnoreDomainHintForApps\":[],\"RespectDomainHintForApps\":[]}}"
    ],
    "displayName": "Home Realm Discovery Domain Hint Exclusion Policy",  
    "isOrganizationDefault": true 
    }
    
  2. Соберите отзывы от пользователей тестового домена. Собирайте сведения о приложениях, которые были нарушены в результате этого изменения, — они имеют зависимость от использования указания домена и должны быть обновлены. Пока добавьте их в раздел RespectDomainHintForApps:

    PATCH https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies/{homeRealmDiscoveryPolicyId} 
    {  
    "definition": [  
        "{\"HomeRealmDiscoveryPolicy\":{\"IgnoreDomainHintForDomains\":[\"testDomain.com\"],\"RespectDomainHintForDomains\":[],\"IgnoreDomainHintForApps\":[],\"RespectDomainHintForApps\":[\"app1-clientID-Guid\",\"app2-clientID-Guid\"]}}"
    ],
    "displayName": "Home Realm Discovery Domain Hint Exclusion Policy6",  
    "isOrganizationDefault": false   
    }
    
  3. Продолжайте расширение развертывания политики в новых доменах и сбор дополнительных отзывов.

    PATCH https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies/{homeRealmDiscoveryPolicyId} 
    {  
    "definition": [  
        "{\"HomeRealmDiscoveryPolicy\":{\"IgnoreDomainHintForDomains\":[\"testDomain.com\",\"otherDomain.com\",\"anotherDomain.com\"],\"RespectDomainHintForDomains\":[],\"IgnoreDomainHintForApps\":[],\"RespectDomainHintForApps\":[\"app1-clientID-Guid\",\"app2-clientID-Guid\"]}}"  
    ],  
    "displayName": "Home Realm Discovery Domain Hint Exclusion Policy",  
    "isOrganizationDefault": true  
    }
    
  4. Завершите развертывание — нацелитесь на все домены, за исключением тех, которые должны продолжать ускоряться.

    PATCH https://graph.microsoft.com/v1.0/policies/homeRealmDiscoveryPolicies/{homeRealmDiscoveryPolicyId} 
    {  
    "definition": [  
        "{\"HomeRealmDiscoveryPolicy\":{\"IgnoreDomainHintForDomains\":[\"*\"],\"RespectDomainHintForDomains\":[\"guestHandlingDomain.com\"],\"IgnoreDomainHintForApps\":[],\"RespectDomainHintForApps\":[\"app1-clientID-Guid\",\"app2-clientID-Guid\"]}}"  
    ],  
    "displayName": "Home Realm Discovery Domain Hint Exclusion Policy",  
    "isOrganizationDefault": true   
    }
    

После завершения шага 4 все пользователи, кроме пользователей в guestHandlingDomain.com, могут войти на страницу входа Microsoft Entra, даже если подсказки по домену обычно ведут к ускоренному перенаправлению на федеративного поставщика удостоверений. Исключение этого параметра заключается в том, что приложение, запрашивающее вход, является одним из исключенных . Для этих приложений все указания домена по-прежнему принимаются.

Сведения о DomainHintPolicy

Раздел DomainHintPolicy политики HRD — это объект JSON, позволяющий администратору отказаться от определенных доменов и приложений из использования указания домена. В этом разделе показано, что страница входа в Microsoft Entra будет вести себя так, как если бы параметр domain_hint в запросе на вход не присутствовал.

Разделы политик о соблюдении и игнорировании

Раздел Значение Значения
IgnoreDomainHintForDomains Если это указание домена отправляется в запросе, игнорировать его. Массив адресов домена (например contoso.com). Также поддерживает all_domains
RespectDomainHintForDomains Если это указание домена отправляется в запросе, соблюдать его, даже если IgnoreDomainHintForApps указывает, что приложение в запросе не должно использовать автоматическое ускорение. Это свойство предназначено для замедления развертывания устаревших указаний домена в сети. Вы можете указать, что некоторые домены по-прежнему должны быть ускорены. Массив адресов домена (например contoso.com). Также поддерживает all_domains
IgnoreDomainHintForApps Если запрос из этого приложения поставляется с указанием домена, игнорировать его. Массив идентификаторов приложений (GUID). Также поддерживает all_apps
RespectDomainHintForApps Если запрос из этого приложения поставляется с указанием домена, соблюдать его, даже если IgnoreDomainHintForDomains включает этот домен. Используется для того, чтобы некоторые приложения продолжали работать при обнаружении прерывания без указаний домена. Массив идентификаторов приложений (GUID). Также поддерживает all_apps

Оценка политики

Логика DomainHintPolicy выполняется для каждого входящего запроса, содержащего указание домена, и ускоряется на основе двух фрагментов данных в запросе — домен в указании домена и идентификатор клиента (приложения). Короче говоря, "Уважение" для домена или приложения имеет приоритет над инструкцией "Игнорировать" указание домена для заданного домена или приложения.

  • При отсутствии политики подсказки домена или если ни один из четырех разделов не ссылается на указанное приложение или подсказку домена, остальная часть политики HRD оценивается.
  • Если один (или оба) RespectDomainHintForAppsRespectDomainHintForDomains раздела содержит в запросе указание приложения или домена, пользователь автоматически ускоряется в федеративном поставщике удостоверений, как запрашивается.
  • Если один (или оба) IgnoreDomainHintsForAppsIgnoreDomainHintsForDomains или ссылается на приложение или указание домена в запросе, и они не ссылаются на разделы "Уважение", запрос не будет автоматически ускорен, и пользователь остается на странице входа Microsoft Entra, чтобы указать имя пользователя.

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