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


Шаблоны приложений в прокси-сервере приложения Microsoft Entra

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

  • Упростите управление административными задачами.
  • Уменьшение числа потенциальных ошибок конфигурации.
  • Предоставление пользователям безопасного доступа к дополнительным ресурсам.

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

Создание приложения с подстановочным знаком

Можно создать приложение с подстановочным знаком (*), если имеется группа приложений с одинаковой конфигурацией. Потенциальными кандидатами для приложения с подстановочным знаком являются приложения, имеющие следующие настройки.

  • группа пользователей, имеющая доступ к этим приложениям;
  • метод единого входа (SSO)
  • протокол доступа (HTTP, HTTPS).

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

http(s)://*.<domain>

Например: http(s)://*.adventure-works.com.

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

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

Предварительные условия

Для начала убедитесь, что вы выполнили эти требования.

Личные домены

Хотя личные домены не являются обязательными для других приложений, они являются необходимым условием для создания приложений с подстановочным знаком. Для создания личных доменов необходимо:

  1. Создать проверенный домен в Azure.
  2. Загрузите TLS/SSL-сертификат в формате PFX в прокси-сервер вашего приложения.

Рассмотрите возможность использования сертификата с подстановочным знаком для сопоставления с приложением, которое вы собираетесь создать.

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

Обновления DNS

При использовании личных доменов необходимо создать запись DNS с записью CNAME для внешнего URL-адреса (например, *.adventure-works.com), указывающую на внешний URL-адрес конечной точки прокси приложения. Для приложений с подстановочными знаками запись CNAME должна указывать на соответствующий внешний URL-адрес:

<yourAADTenantId>.tenant.runtime.msappproxy.net

Чтобы убедиться в правильной настройке CNAME, вы можете использовать nslookup на одном из целевых конечных узлов, например, expenses.adventure-works.com. Полученный ответ должен содержать упомянутый выше псевдоним (<yourAADTenantId>.tenant.runtime.msappproxy.net).

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

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

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

Регион, назначенный соединителю Внешний URL-адрес
Азия <yourAADTenantId>.asia.tenant.runtime.msappproxy.net
Австралия <yourAADTenantId>.aus.tenant.runtime.msappproxy.net
Европа <yourAADTenantId>.eur.tenant.runtime.msappproxy.net
Северная Америка <yourAADTenantId>.nam.tenant.runtime.msappproxy.net

Рекомендации

Ниже приведены некоторые рекомендации, которые следует учитывать для приложений с подстановочными знаками.

Допустимые форматы

Для приложений с подстановочным знаком внутренний URL-адрес должен указан в формате http(s)://*.<domain>.

Для внутреннего URL-адреса используйте формат http(s)://*.<домен>

При настройке внешнего URL-адреса необходимо использовать следующий формат: https://*.<custom domain>.

Для внешнего URL-адреса используйте формат https://*.<личный домен>

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

Исключение приложений из списка с подстановочными знаками

Приложение можно исключить из приложения с подстановочным знаком:

  • Опубликовать приложение исключений как обычное приложение.
  • включив подстановочный знак только для определенных приложений с помощью параметров DNS.

Публикация приложения как регулярного является предпочтительным способом исключения приложения из действия подстановочного знака. Следует размещать исключенные приложения перед размещением приложений с подстановочными знаками, чтобы гарантировать соблюдение ваших исключений с самого начала. Чем определеннее приложение, тем выше его приоритет: приложение, опубликованное как budgets.finance.adventure-works.com, имеет приоритет над приложением *.finance.adventure-works.com, которое, в свою очередь, имеет приоритет над приложением *.adventure-works.com.

Можно также ограничить применение подстановочного знака только определенными приложениями с помощью параметров управления DNS. Рекомендуется создать запись CNAME, которая содержит подстановочный знак и соответствует формату настроенного внешнего URL-адреса. Однако вместо этого можно указать определенные URL-адреса приложений для подстановочных знаков. Например, вместо *.adventure-works.com можно указать hr.adventure-works.com, а вместо expenses.adventure-works.com и travel.adventure-works.com individually00001111-aaaa-2222-bbbb-3333cccc4444.tenant.runtime.msappproxy.net.

При использовании этого подхода необходима еще одна запись CNAME для значения AppId.domain, например 00001111-aaaa-2222-bbbb-3333cccc4444.adventure-works.com, которое указывает на то же расположение. Идентификатор AppId можно найти на странице свойств универсального приложения.

Установка URL-адреса домашней страницы панели MyApps

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

  1. Следуйте указаниям по настройке URL-адреса домашней страницы.
  2. На странице свойств приложения для параметра Show Application (Показать приложение) задайте значение true.

Ограниченное делегирование Kerberos

Для приложений, использующих Kerberos с ограниченным делегированием (KCD) как метод единого входа, SPN, указанный для этого метода, должен содержать подстановочный знак. Например, SPN может быть: HTTP/*.adventure-works.com. Вам по-прежнему нужно настроить отдельные SPN на серверных узлах вашего бекэнда (например, HTTP/expenses.adventure-works.com and HTTP/travel.adventure-works.com).

Сценарий 1: Общее применение подстановочного знака

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

  • expenses.adventure-works.com
  • hr.adventure-works.com
  • travel.adventure-works.com

Все три приложения:

  • используются всеми пользователями;
  • используют Встроенную проверку подлинности Windows;
  • имеют одинаковые свойства.

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

  • арендатор со следующим идентификатором: aaaabbbb-0000-cccc-1111-dddd2222eeee
  • Настроен проверенный домен adventure-works.com.
  • Запись CNAME, которая указывает *.adventure-works.com на 00001111-aaaa-2222-bbbb-3333cccc4444.tenant.runtime.msappproxy.net, создана.

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

  • Внутренний URL-адрес.

    Пример: подстановочный знак во внутреннем URL-адресе

  • Внешний URL-адрес:

    Пример: подстановочный знак во внешнем URL-адресе

  • Внутреннее имя службы приложения

    Пример: подстановочный знак в конфигурации SPN

Опубликовав приложение с подстановочным знаком, вы сможете получить доступ к трем приложениям, переходя по привычным URL-адресам (например, travel.adventure-works.com).

Конфигурация реализует следующую структуру.

Показывает структуру, реализованную в примере конфигурации

Цвет Описание
Синий Приложения, явно опубликованные и видимые в Центре администрирования Microsoft Entra.
Серый Приложения, к которые можно получить доступ через родительское приложение.

Сценарий 2. Общее приложение с подстановочным знаком с исключением

В этом сценарии помимо трех общих приложений имеется еще одно приложение finance.adventure-works.com, которое должно быть доступно только финансовому отделу. При текущей структуре приложений ваше финансовое приложение было бы доступно всем сотрудникам через универсальное приложение. Чтобы изменить это, исключите ваше приложение из универсальной маски, настроив Finance как отдельную единицу с более строгими разрешениями.

Убедитесь, что запись CNAME существует, указывающая finance.adventure-works.com на конкретную конечную точку приложения, указанную на странице прокси приложения. В данном случае finance.adventure-works.com указывает на https://finance-awcycles.msappproxy.net/.

После выполнения описанных действий в этом сценарии необходимо выполнить следующую настройку.

  • Во внутреннем URL-адресе укажите finance вместо подстановочного знака.

    Пример: установите

  • Во внешнем URL-адресе укажите finance вместо подстановочного знака.

    Пример: задайте финансы вместо подстановочного символа во внешнем URL-адресе

  • Вы указали finance в качестве имени субъекта внутреннего приложения, вместо использования подстановочного знака.

    Пример: установить параметр финансов вместо подстановочного знака в конфигурации SPN

Эта конфигурация реализует следующий сценарий.

Схема конфигурации, реализованной в примере сценария.

URL-адрес finance.adventure-works.com является конкретным. URL-адрес *.adventure-works.com не является конкретным. Более конкретный URL-адрес имеет приоритет. Пользователи, переходящие по адресу finance.adventure-works.com, используют функции, указанные в финансовом приложении. В этом случае доступ к finance.adventure-works.com имеют только сотрудники финансового отдела.

Если вы опубликовали несколько приложений для финансового отдела и используете проверенный домен finance.adventure-works.com, то можно опубликовать другое приложение с подстановочным знаком *.finance.adventure-works.com. Так как оно определено точнее, чем общее приложение *.adventure-works.com, оно имеет более высокий приоритет в случае, когда пользователь обращается к приложению в домене finance.

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