Настройка поведения входа с помощью обнаружения домашней области

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

Автоматический вход в систему

Некоторые организации настраивают домены в клиенте Microsoft Entra для федерации с другим поставщиком удостоверений (IDP), например AD FS для проверки подлинности пользователей. При входе пользователя в приложение они сначала представлены на странице входа в Microsoft Entra. После ввода имени участника-пользователя, если они находятся в федеративном домене, они будут доставлены на страницу входа поставщика удостоверений, обслуживающих этот домен. При определенных обстоятельствах у администраторов может возникнуть необходимость направлять пользователей на страницу входа, когда они пытаются войти в определенные приложения. В результате пользователи могут пропустить начальную страницу идентификатора Microsoft Entra. Этот процесс называется автоматическим ускорением входа.

Для федеративных пользователей с учетными данными с поддержкой облака, такими как вход в систему с помощью SMS или ключи FIDO, следует запретить автоматическое ускорение входа. Сведения о том, как запретить указания домена с помощью обнаружения домашней области, см. в разделе Отключение автоматического ускорения входа.

Важно!

Начиная с апреля 2023 года организации, использующие автоматическое ускорение или смарт-связи, могут начать видеть новый экран, добавленный в пользовательский интерфейс входа. Этот экран называется диалогом подтверждения домена, является частью общей приверженности Корпорации Майкрософт обеспечению безопасности и требует от пользователя подтвердить домен клиента, в котором они входят. Если вы видите диалоговое окно подтверждения домена и не распознаете указанный домен клиента, необходимо отменить поток проверки подлинности и связаться с ИТ-Администратор.

Дополнительные сведения см . в диалоговом окне подтверждения домена.

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

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

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

Настройка политики HRD для приложения

Мы будем использовать командлеты PowerShell для Azure AD, чтобы изучить несколько сценариев, включая:

Мы будем использовать Microsoft Graph, чтобы изучить несколько сценариев, включая:

  • настройку политики обнаружения домашней области для выполнения автоматического ускорения входа для приложения в клиенте с одним федеративным доменом;

  • настройку политики обнаружения домашней области для выполнения автоматического ускорения входа для приложения для одного из нескольких доменов, проверенных для вашего клиента;

  • Настройка политики HRD, чтобы разрешить устаревшему приложению выполнять прямую проверку подлинности имени пользователя и пароля в идентификатор Microsoft Entra id для федеративного пользователя.

  • получение списка приложений, для которых настроена политика.

В следующих примерах вы создаете, обновляете, связываете и удаляете политики HRD в субъектах-службах приложений в идентификаторе Microsoft Entra.

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

    Connect-AzureAD -Confirm
    
  2. Выполните следующую команду для просмотра всех политик в организации.

    Get-AzureADPolicy
    

Если результат не возвращается, в клиенте нет созданных политик.

Создание политики обнаружения домашней области

В этом примере показано, как создать политику, которая при назначении ее приложению выполняет одно из следующих действий:

  • Автоматически ускоряет пользователей на экране входа в федеративный поставщик удостоверений при входе в приложение при наличии одного домена в клиенте.
  • Автоматически ускоряет пользователей на экране входа федеративного поставщика удостоверений, если в клиенте существует несколько федеративных доменов.
  • Включает неинтерактивный вход пользователя или пароля непосредственно в идентификатор Microsoft Entra для федеративных пользователей для приложений, которым назначена политика.

Следующая политика автоматически ускоряет пользователей на экране входа федеративного поставщика удостоверений при входе в приложение при наличии одного домена в клиенте.

New-AzureADPolicy 
    -Definition @("{`"HomeRealmDiscoveryPolicy`":{`"AccelerateToFederatedDomain`":true}}") -DisplayName BasicAutoAccelerationPolicy 
    -Type HomeRealmDiscoveryPolicy
POST /policies/homeRealmDiscoveryPolicies

"HomeRealmDiscoveryPolicy": {
    "AccelerateToFederatedDomain": true
}

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

New-AzureADPolicy 
    -Definition @("{`"HomeRealmDiscoveryPolicy`":{`"AccelerateToFederatedDomain`":true, `"PreferredDomain`":`"federated.example.edu`"}}") 
    -DisplayName MultiDomainAutoAccelerationPolicy 
    -Type HomeRealmDiscoveryPolicy
POST /policies/homeRealmDiscoveryPolicies

"HomeRealmDiscoveryPolicy": {
    "AccelerateToFederatedDomain": true,
    "PreferredDomain": [
      "federated.example.edu"
    ]
}

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

New-AzureADPolicy 
    -Definition @("{`"HomeRealmDiscoveryPolicy`":{`"AllowCloudPasswordValidation`":true}}") 
    -DisplayName EnableDirectAuthPolicy 
    -Type HomeRealmDiscoveryPolicy
POST /policies/homeRealmDiscoveryPolicies

"EnableDirectAuthPolicy": {
    "AllowCloudPasswordValidation": true
}

Чтобы просмотреть созданную политику и получить для нее идентификатор ObjectID, выполните следующую команду.

Get-AzureADPolicy

Чтобы применить политику HRD после ее создания, ее можно назначить нескольким субъектам-службам приложений.

Поиск субъекта-службы для назначения политики

Чтобы назначить политику субъектам-службам, необходимо знать их идентификаторы ObjectID. Существует несколько способов получения идентификатора ObjectID субъектов-служб.

Вы можете использовать Центр администрирования Microsoft Entra или запросить Microsoft Graph. Вы также можете перейти к средству Обозреватель Graph и войти в учетную запись Microsoft Entra, чтобы просмотреть все субъекты-службы вашей организации.

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

Get-AzureADServicePrincipal

Назначение политики для субъекта-службы

Получив идентификатор ObjectID субъекта-службы приложения, для которого требуется настроить автоматическое ускорение, выполните следующую команду. Эта команда привязывает политику обнаружения домашней области, созданную на шаге 1, к субъекту-службе, определенному на шаге 2.

Add-AzureADServicePrincipalPolicy 
    -Id <ObjectID of the Service Principal> 
    -RefObjectId <ObjectId of the Policy>

Эту команду можно повторить для каждого субъекта-службы, для которого необходимо добавить политику.

Если приложению уже назначена политика HomeRealmDiscovery, вам не удастся назначить ему еще одну такую политику. В этом случае измените определение политики HRD, которая назначена приложению, чтобы добавить дополнительные параметры.

Проверка субъектов-служб приложения, которым назначена политика обнаружения домашней области

Чтобы проверить, для каких приложений настроена политика обнаружения домашней области, воспользуйтесь командлетом Get-AzureADPolicyAppliedObject. Передайте в него идентификатор ObjectID политики, которую нужно проверить.

Get-AzureADPolicyAppliedObject -id <ObjectId of the Policy>

Испытайте приложение, чтобы проверить новую политику в действии.

получение списка приложений, для которых настроена политика обнаружения домашней области

  1. Получение списка всех политик, созданных в организации

    Get-AzureADPolicy
    

Запишите идентификатор ObjectID политики, для которой вы хотите получить список назначений.

  1. Получение списка субъектов-служб, которым назначена политика

    Get-AzureADPolicyAppliedObject -id <ObjectId of the Policy>
    

Удаление политики HRD из приложения

  1. Получение идентификатора ObjectID

Используйте предыдущий пример, чтобы получить идентификатор ObjectID политики, а также идентификатор ObjectID субъекта-службы приложения, из которого нужно удалить эту политику.

  1. Удаление назначения политики из субъекта-службы приложения

    Remove-AzureADServicePrincipalPolicy -id <ObjectId of the Service Principal>  -PolicyId <ObjectId of the policy>
    
  2. Проверка удаления путем получения списка субъектов-служб, которым назначена политика

    Get-AzureADPolicyAppliedObject -id <ObjectId of the Policy>
    

Настройка политики с помощью Graph Explorer

В окне песочницы Microsoft Graph сделайте следующее:

  1. Войдите с помощью одной из ролей, перечисленных в разделе предварительных требований.

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

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

  4. POST новую политику или PATCH для обновления существующей политики.

    PATCH /policies/homeRealmDiscoveryPolicies/{id}
        {
            "definition": [
            "{\"HomeRealmDiscoveryPolicy\":
            {\"AccelerateToFederatedDomain\":true,
            \"PreferredDomain\":\"federated.example.edu\",
            \"AlternateIdLogin\":{\"Enabled\":true}}}"
        ],
            "displayName": "Home Realm Discovery auto acceleration",
            "isOrganizationDefault": true
        }
    
  5. Чтобы просмотреть новую политику, выполните следующий запрос:

    GET /policies/homeRealmDiscoveryPolicies/{id}
    
  6. Чтобы удалить созданную политику обнаружения домашней области, выполните указанный запрос:

    DELETE /policies/homeRealmDiscoveryPolicies/{id}
    

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