Проверка подлинности на основе заголовков для единого входа с помощью прокси приложения и PingAccess

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

Что такое PingAccess для идентификатора Microsoft Entra?

С помощью идентификатора PingAccess для Microsoft Entra вы предоставляете пользователям доступ и единый вход (SSO) приложениям, используюющим заголовки для проверки подлинности. Прокси приложения обрабатывает эти приложения как любые другие, используя идентификатор Microsoft Entra для проверки подлинности доступа, а затем передает трафик через службу соединителя. PingAccess находится перед приложениями и преобразует маркер доступа из идентификатора Microsoft Entra в заголовок. Затем приложение проходит аутентификацию в совместимом формате.

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

Как мне получить доступ?

Вам нужна лицензия на PingAccess и идентификатор Microsoft Entra. Однако подписки Microsoft Entra ID P1 или P2 включают базовую лицензию PingAccess, которая охватывает до 20 приложений. Если вам нужно опубликовать более 20 приложений на основе заголовков, вы можете приобрести дополнительные лицензии из PingAccess.

Дополнительные сведения см . в выпусках Microsoft Entra.

Публикация приложения в Microsoft Entra

В этой статье описаны шаги по публикации приложения в первый раз. В этой статье приводятся рекомендации по прокси приложениям и PingAccess.

Примечание.

Некоторые инструкции существуют на сайте Ping Identity.

Установка соединителя частной сети

Соединитель частной сети — это служба Windows Server, которая направляет трафик от удаленных сотрудников к опубликованным приложениям. Дополнительные инструкции по установке см. в руководстве по добавлению локального приложения для удаленного доступа через прокси приложения в идентификаторе Microsoft Entra ID.

  1. Войдите в Центр администрирования Microsoft Entra как минимум приложение Администратор istrator.
  2. Перейдите к> прокси приложениям Identity Application>Enterprise.>
  3. Выберите Скачать службу соединителя.
  4. Следуйте инструкциям по установке.

Скачивание соединителя должно автоматически включить прокси приложения для каталога, но если нет, можно выбрать параметр "Включить прокси приложения".

Добавление приложения в идентификатор Microsoft Entra с помощью прокси приложения

Существует два шага, чтобы добавить приложение в идентификатор Microsoft Entra. Сначала необходимо опубликовать приложение с помощью прокси приложения. Затем необходимо собрать сведения о приложении, которое можно использовать во время шагов PingAccess.

Публикация приложения

Сначала опубликуйте приложение. Для этого выполните следующие действия:

  • Добавление локального приложения в идентификатор Microsoft Entra.
  • Назначение пользователя для тестирования приложения и выбора единого входа на основе заголовков.
  • Настройка URL-адреса перенаправления приложения.
  • Предоставление разрешений пользователям и другим приложениям для использования локального приложения.

Для публикации собственного локального приложения выполните следующее:

  1. Войдите в Центр администрирования Microsoft Entra в качестве приложения Администратор istrator.

  2. Перейдите к новым приложениям>Enterprise. Добавление локального приложения.> Откроется страница Добавить собственное локальное приложение.

    Добавление собственного локального приложения

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

    Примечание.

    Более подробное пошаговое руководство по этому шагу см. в разделе "Добавление локального приложения в идентификатор Microsoft Entra ID".

    1. Внутренний URL-адрес: обычно вы предоставляете URL-адрес, который передает вас на страницу входа приложения при входе в корпоративную сеть. В этом сценарии соединитель должен рассматривать прокси-сервер PingAccess как главную страницу приложения. Используйте следующий формат: https://<host name of your PingAccess server>:<port>. Порт 3000 используется по умолчанию, но его можно настроить в PingAccess.

      Предупреждение

      Для этого типа единого входа внутренний URL-адрес должен использоваться https , а не http. Кроме того, два приложения не должны иметь один и тот же внутренний URL-адрес, чтобы прокси приложения могли поддерживать различие между ними.

    2. Метод предварительной проверки подлинности: выберите идентификатор Microsoft Entra.

    3. Преобразование URL-адреса в заголовок: выберите Нет.

    Примечание.

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

  4. Выберите Добавить. Откроется страница обзора для нового приложения.

Теперь назначьте пользователя для тестирования приложений и выберите единый вход на основе заголовка.

  1. На боковой панели приложения выберите Пользователи и группы>Добавить пользователя>Пользователи и группы (выбрано: <число>). Отобразится список пользователей и групп для выбора.

    Отображается список пользователей и групп

  2. Выберите пользователя для тестирования приложения и нажмите Выбрать. Убедитесь, что у тестовой учетной записи есть доступ к локальному приложению.

  3. Выберите Назначить.

  4. На боковой панели приложения выберите Единый вход>На основе заголовка.

    Совет

    Если вы впервые используете единый вход на основе заголовка, необходимо установить PingAccess. Чтобы убедиться, что подписка Microsoft Entra ID автоматически связана с установкой PingAccess, используйте ссылку на этой странице единого входа, чтобы скачать PingAccess. Вы можете прямо сейчас перейти на сайт скачивания или вернуться на эту страницу позже.

    Отображается экран единого входа на основе заголовка и PingAccess

  5. Выберите Сохранить.

Затем убедитесь, что для URL-адреса перенаправления задан внешний URL-адрес.

  1. Перейдите к приложениям> удостоверений>Регистрация приложений и выберите приложение.
  2. Выберите ссылку рядом с URI перенаправления. Ссылка показывает объем настройки универсальных идентификаторов ресурсов перенаправления (URI) для веб-клиентов и общедоступных клиентов. Откроется страница <имя приложения> — проверка подлинности.
  3. Убедитесь, что внешний URL-адрес, который ранее был назначен для приложения, находится в списке URI для перенаправления. Если это не так, добавьте внешний URL-адрес сейчас, используя тип универсального кода ресурса для перенаправления Интернет, и выберите Сохранить.

Помимо внешнего URL-адреса, в список URI перенаправления следует добавить конечную точку авторизации идентификатора Microsoft Entra на внешний URL-адрес.

https://*.msappproxy.net/pa/oidc/cb https://*.msappproxy.net/

Наконец, настройте локальное приложение, чтобы пользователи имели read доступ и другие приложения:read/write

  1. На боковой панели приложения Регистрации приложений выберите Разрешения API>Добавить разрешение>Microsoft API>Microsoft Graph. Откроется страница разрешений API запросов для Microsoft Graph, содержащая разрешения для Microsoft Graph.

    Отображается страница запроса разрешений API

  2. Выберите Делегированные разрешения>Пользователь>Пользователь.Чтение.

  3. Выберите Разрешения приложения>Приложение>Приложение.Чтение/запись.Все.

  4. Выберите Добавить разрешения.

  5. На странице Разрешения API выберите Предоставление согласие администратора для <имя вашего каталога>.

Сбор сведений об этапах PingAccess

Соберите три глобальных уникальных идентификатора (GUID). Используйте идентификаторы GUID для настройки приложения с помощью PingAccess.

Имя поля идентификатора Microsoft Entra Имя поля PingAccess Формат данных
Application (client) ID (Идентификатор приложения (клиент)) Идентификатор клиента GUID
Идентификатор каталога (клиент) Издатель GUID
PingAccess key Секрет клиента Произвольная строка

Для получения этих сведений выполните следующие действия:

  1. Перейдите к приложениям> удостоверений>Регистрация приложений и выберите приложение.

    Обзор регистрации приложения

  2. Рядом со значением Идентификатор приложения (клиента) выберите значок Копировать в буфер обмена, затем скопируйте и сохраните его. Это значение указывается позже как идентификатор клиента PingAccess.

  3. Затем укажите значение Идентификатор каталога (клиента), также выберите значок Копировать в буфер обмена, затем скопируйте и сохраните его. Это значение указывается позже как идентификатор издателя PingAccess.

  4. На боковой панели Регистрация приложений для приложения выберите Сертификаты и секреты>Новый секрет клиента. Откроется страница Добавить секрет клиента.

    Отображается страница добавления секрета клиента

  5. В поле Описание введите PingAccess key.

  6. В разделе Срок действиявыберите, как задать ключ PingAccess: Через 1 год, Через 2 года или Никогда.

  7. Выберите Добавить. Ключ PingAccess отображается в таблице секретов клиента со случайной строкой, которая автоматически указывается в поле VALUE.

  8. Рядом с полем VALUE ключа PingAccess выберите значок Копировать в буфер обмена, затем скопируйте и сохраните его. Это значение указывается позже как секрет клиента PingAccess.

Обновите поле acceptMappedClaims:

  1. Войдите в Центр администрирования Microsoft Entra как минимум приложение Администратор istrator.
  2. В правом верхнем углу выберите свое имя пользователя. Убедитесь, что вы вошли в каталог, использующий прокси приложения. Если необходимо изменить каталоги, выберите "Переключить каталог " и выберите каталог, использующий прокси приложения.
  3. Перейдите к приложениям> удостоверений>Регистрация приложений и выберите приложение.
  4. На боковой панели страницы Регистрация приложений для приложения выберите Манифест. Появится манифест-код JSON для регистрации приложения.
  5. Найдите поле acceptMappedClaims и измените его значение на True.
  6. Выберите Сохранить.

Использование дополнительных утверждений (необязательно)

Необязательные утверждения позволяют добавлять стандартные, но не включенные по умолчанию утверждения, имеющиеся у каждого пользователя и клиента. Можно настроить дополнительные утверждения для своего приложения, изменив манифест приложения. Дополнительные сведения см. в статье о манифесте приложения Microsoft Entra.

Пример включения адреса электронной почты в access_token, который использует PingAccess:

    "optionalClaims": {
        "idToken": [],
        "accessToken": [
            {
                "name": "email",
                "source": null,
                "essential": false,
                "additionalProperties": []
            }
        ],
        "saml2Token": []
    },

Использование политики сопоставления утверждений (необязательно)

Сопоставление утверждений позволяет перенести старые локальные приложения в облако, добавив дополнительные пользовательские утверждения, которые поддерживают службы федерации Active Directory (AD FS) (ADFS) или пользовательские объекты. Дополнительные сведения см. в разделе "Политика сопоставления утверждений( предварительная версия)".

Чтобы использовать пользовательское утверждение и включить дополнительные поля в приложение. Создал настраиваемую политику сопоставления утверждений и назначил ее приложению.

Примечание.

Чтобы использовать настраиваемое утверждение, также необходимо определить настраиваемую политику и назначить ее приложению. Политика должна содержать все необходимые настраиваемые атрибуты.

Можно определить и назначать политику с помощью PowerShell или Microsoft Graph. Если выполнять эти действия с помощью PowerShell, может потребоваться сначала использовать New-AzureADPolicy, а затем назначить для приложения с помощью Add-AzureADServicePrincipalPolicy. Дополнительные сведения см. в статье Назначение политики сопоставления утверждений.

Пример:

$pol = New-AzureADPolicy -Definition @('{"ClaimsMappingPolicy":{"Version":1,"IncludeBasicClaimSet":"true", "ClaimsSchema": [{"Source":"user","ID":"employeeid","JwtClaimType":"employeeid"}]}}') -DisplayName "AdditionalClaims" -Type "ClaimsMappingPolicy"

Add-AzureADServicePrincipalPolicy -Id "<<The object Id of the Enterprise Application you published in the previous step, which requires this claim>>" -RefObjectId $pol.Id

Включение PingAccess для использования пользовательских утверждений

Включение PingAccess для использования пользовательских утверждений является необязательным, но требуется, если приложение будет использовать больше утверждений.

При настройке PingAccess на следующем шаге для создаваемого веб-сеанса (Параметры-Access-Web>> Session) должен быть выбран профиль запроса и обновить атрибуты пользователя, равные "Нет".

Скачивание PingAccess и конфигурация приложения

Подробное описание действий по настройке PingAccess в этом сценарии продолжаются в документации по Ping Identity. Следуйте инструкциям по настройке идентификатора PingAccess для Microsoft Entra на веб-сайте Ping Identity и скачайте последнюю версию PingAccess.

Действия, описанные в статье PingAccess, показано, как получить учетную запись PingAccess. Чтобы создать подключение OpenID openID Подключение (OIDC) Microsoft Entra ID, настройте поставщика маркеров со значением идентификатора каталога (клиента), скопированного из Центра администрирования Microsoft Entra. Создайте веб-сеанс в PingAccess. Application (client) ID Используйте значения и PingAccess key значения. Настройте сопоставление удостоверений и создайте виртуальный узел, сайт и приложение.

Тестирование приложения

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

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