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


Перенаправление жестко закодированных ссылок для приложений, опубликованных с помощью прокси приложения Microsoft Entra

Прокси приложения Microsoft Entra делает локальные приложения доступными для пользователей, удаленных или на своих устройствах. Тем не менее, некоторые приложения были разработаны с помощью локальных ссылок, внедренных в HTML-код. Эти ссылки могут работать некорректно при использовании приложения удаленно. Если несколько локальных приложений указывают друг на друга, то пользователям требуется, чтобы ссылки продолжали работать, когда их нет в офисе.

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

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

Примечание.

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

Вариант 1. Использование Microsoft Edge. Это решение применимо только в том случае, если вы хотите рекомендовать пользователям или требовать от них, чтобы доступ к приложению осуществлялся через браузер Microsoft Edge. Он обрабатывает все опубликованные URL-адреса.

Вариант 2. Использование расширения MyApps. Для этого решения пользователям требуется установить расширение браузера на стороне клиента, но он обрабатывает все опубликованные URL-адреса и работает с наиболее популярными браузерами.

Вариант 3. Используйте параметр перевода ссылок. Параметр является параметром на стороне администратора, который невидим для пользователей. Однако он обрабатывает URL-адреса только в HTML и CSS.

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

Примечание.

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

А если преобразование ссылок необходимо настроить в приложении SharePoint, то см. статью Настройка альтернативных сопоставлений доступа для SharePoint 2013, где описан другой подход к сопоставлению ссылок.

Вариант 1. Интеграция Microsoft Edge

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

Дополнительные сведения, включая настройку этого параметра, см . в документации по Microsoft Intune по управлению веб-доступом с помощью Microsoft Edge для iOS и Android.

Вариант 2. Расширение браузера MyApps

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

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

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

Примечание.

Расширение браузера MyApps не поддерживает преобразование ссылок для URL-адресов с подстановочными знаками.

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

Примечание.

Варианты 2 и 3 не следует использовать одновременно.

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

Прокси приложения предполагает, что приложения кодируются в UTF-8. Если это не так, то укажите тип кодирования в HTTP-заголовке ответа, например Content-Type:text/html;charset=utf-8.

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

Существует два общих типа внутренних ссылок в локальных приложениях:

  • Относительные внутренние ссылки, которые указывают на общедоступный ресурс в локальной структуре файлов, такой как /claims/claims.html. Эти ссылки автоматически работают в приложениях, опубликованных через прокси приложения, и продолжают работать с переводом ссылок или без них.
  • Жестко заданные внутренние ссылки на другие локальные приложения, такие как http://expenses, или опубликованные файлы, например http://expenses/logo.jpg. Функция преобразования ссылок работает с жестко заданными внутренними ссылками и изменяет их для указания на внешние URL-адреса, по которым могут пройти удаленные пользователи.

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

  • a (href)
  • audio (src)
  • base (href)
  • button (formaction)
  • div (data-background, style, data-src)
  • embed (src)
  • form (action)
  • frame (src)
  • head (profile)
  • html (manifest)
  • iframe (longdesc, src)
  • img (longdesc, src)
  • input (formaction, src, value)
  • link (href)
  • menuitem (icon)
  • meta (content)
  • object (archive, data, codebase)
  • script (src)
  • source (src)
  • track (src)
  • video (src, poster)

Атрибут URL-адреса преобразуется и в коде CSS.

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

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

При включении перевода ссылок для приложения "Преимущества" ссылки на expenses and Travel перенаправляются на внешние URL-адреса для этих приложений. Однако ссылка на отзыв не перенаправляется, так как внешний URL-адрес отсутствует. Ссылки из expenses and Travel back to Benefits не работают, так как перевод ссылок не включен для этих двух приложений.

Ссылки из приложения

Для повышения производительности и безопасности некоторые ссылки не преобразовываются:

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

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

Приступить к работе с преобразованием ссылок очень просто:

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

  2. Перейдите к приложениям>Identity>Application Enterprise Для всех приложений.>

  3. Выберите приложение, которое вы хотите управлять.

  4. Переведите переключатель Translate URLs in application body (Преобразовывать URL-адреса в коде приложения) в состояние Да.

    Выберите

  5. Нажмите кнопку Сохранить, чтобы применить изменения.

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

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