Используйте управляемые идентичности для аутентификации в источники

Область применения: ✔️ Front Door Standard ✔️ Front Door Premium

Используя управляемые идентичности Microsoft Entra ID, ваш Azure Front Door Standard или Premium может безопасно получать доступ к другим ресурсам, защищённым Microsoft Entra, таким как Хранилище BLOB-объектов Azure, без необходимости управлять учетными данными. Дополнительные сведения см. в статье Что такое управляемые удостоверения для ресурсов Azure.

После того как вы включите управляемую идентичность для Azure Front Door и предоставите управляемой идентичности необходимые права вашему источнику, Front Door использует управляемый идентификатор для получения токена доступа от Microsoft Entra ID для доступа к указанному ресурсу. После успешного получения токена Front Door устанавливает значение токена в Authorization заголовке с помощью схемы Bearer, а затем пересылает запрос в исходную точку. Front Door кэширует маркер до истечения срока его действия.

Note

Эта функция в настоящее время не поддерживается для Origins с включённым Приватный канал в Front Door.

Azure Front Door поддерживает два типа управляемых удостоверений:

  • Назначаемое системой удостоверение: это удостоверение привязано к службе и удаляется, если служба удаляется. Каждая служба может иметь только одно удостоверение, назначаемое системой.
  • Идентификатор, назначенный пользователем: Этот идентификатор является автономным ресурсом Azure, который вы можете назначить своему сервису. Каждая служба может иметь несколько пользовательских удостоверений.

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

Prerequisites

Активировать управляемое удостоверение

  1. Перейдите к существующему профилю Azure Front Door. Выберите удостоверение в разделе "Безопасность " в меню слева.

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

    Назначено системой

    1. Переключите Состояние на вкл и выберите Сохранить.

      Снимок экрана страницы конфигурации назначаемого системой управляемого удостоверения.

    2. Подтвердите создание управляемого удостоверения системы для профиля Front Door, выбрав "Да" в ответ на запрос.

    Пользователь назначен

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

    1. На вкладке "Назначено пользователем " выберите + Добавить , чтобы добавить управляемую идентичность, назначенную пользователем.

    2. Найдите и выберите назначенное пользователем управляемое удостоверение. Затем нажмите кнопку "Добавить ", чтобы присоединить ее к профилю Azure Front Door.

    3. Имя выбранной назначенной пользователем управляемой учетной записи отображается в профиле Azure Front Door.

      Снимок экрана: управляемое удостоверение, назначаемое пользователем, добавленное в профиль Front Door.

Ассоциировать тождество с группой происхождения

Note

Ассоциация работает только при выполнении всех следующих условий:

  • Группа происхождения не содержит источников с включённой приватной ссылкой.
  • Протокол зонда здоровья установлен в HTTPS настройках группы происхождения.
  • Протокол пересылки установлен в HTTPS Only настройках маршрута.
  • Протокол пересылки установлен так, если HTTPS Only вы используете действие Route configuration override в наборах правил.

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

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

  1. Перейдите в свой существующий профиль Azure Front Door и откройте группы происхождения.

  2. Выберите существующую группу происхождения, у которой уже настроены истоки.

  3. Прокрутите вниз до раздела "Проверка подлинности ".

  4. Включите проверку подлинности источника.

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

  6. Введите правильную область в поле «Область». Поле Scope указывает ресурс Microsoft Entra (аудитория), для которого Azure Front Door запрашивает токен доступа. Токен доступа, выпущенный Microsoft Entra ID, содержит разрешения, применимые к этому целевой ресурсу. В качестве меры безопасности Azure Front Door поддерживает только явный список разрешений для аутентификации исходного происхождения. Поддерживаются следующие диапазоны. Если вы указываете другую область применения, Azure Front Door возвращает ошибку валидации и отклоняет конфигурацию.

    • https://storage.azure.com/.default
    • api://<GUID>/.default(для пользовательских приложений Microsoft Entra, включая распространённые сценарии управления API и App Service)
    • https://appconfig.azure.com/.default
    • https://appconfig-staging.azure.com/.default
  7. Нажмите кнопку Обновить.

    Снимок экрана: привязка идентификатора к группе источника.

Обеспечьте доступ в исходном источнике ресурса

  1. Перейдите на страницу управления вашим ресурсом Origin. Например, если источник является хранилищем BLOB-объектов Azure, перейдите на страницу управления учетной записью хранения.

    Note

    Дальнейшие шаги предполагают, что ваш источник данных — это Хранилище BLOB-объектов Azure. Если вы используете другой тип ресурса, обязательно выберите соответствующую роль функции задания во время назначения ролей. В противном случае шаги остаются одинаковыми для большинства типов ресурсов.

  2. Перейдите в раздел контроль доступа (IAM) и выберите Добавить. Выберите "Добавить назначение ролей " в раскрывающемся меню.

    Снимок экрана: параметры управления доступом.

  3. В разделе Должностные функции на вкладке Роли выберите соответствующую роль (например, читатель данных хранилища BLOB) из списка, а затем нажмите Далее.

    Снимок экрана: вкладка

    Это важно

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

  4. Во вкладке «Участники » в разделе «Назначить доступ к до» выберите «Управляемая идентичность », а затем выберите «Выбрать участников».

    Снимок экрана: вкладка

  5. Откроется окно Выбор управляемых удостоверений. Выберите подписку там, где находится ваш Front Door. В выпадающем меню «Управляемая идентичность » выберите профили «Front Door» и «CDN». В раскрывающемся списке Select выберите управляемую идентичность, созданную для Front Door. Выберите кнопку Select внизу.

  6. Выберите "Проверка и назначение", а затем выберите "Проверка и назначение" еще раз после завершения проверки.

Управление и устранение неполадок аутентификации источника

Устранение ошибок настройки

Если при настройке исходной группы возникают ошибки, проверьте:

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

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

Миграция с токенов SAS

Чтобы избежать простоев при миграции служба хранилища Azure с токенов shared access signature (SAS):

  1. Включите управляемую идентичность для вашего профиля Azure Front Door.
  2. Ассоциируйте управляемую идентичность с группой происхождения.
  3. Перестаньте использовать токены SAS.

Отключить аутентификацию по происхождению

Чтобы отключить аутентификацию источника без прерывания доступа к источнику:

  1. Настройте контроль доступа (IAM) источника так, чтобы он принимал запросы, не использующие управляемую аутентификацию идентичности.
  2. Отключите аутентификацию происхождения на исходной группе.
  3. Дождитесь, пока изменение конфигурации распространится.
  4. Отключите или удалите управляемую личность.

Дополнительные рекомендации

  • Azure Front Door перезаписывает существующий Authorization заголовок на исходный токен аутентификации. Чтобы сохранить клиентский токен, настройте правило, которое использует {http_req_header_Authorization} переменную сервера для отправки токена под отдельным заголовком.

    Снимок экрана правила отправки клиентского токена в источник через другой заголовок.

  • Azure Front Door включает токен доступа в Authorization заголовке для зондов здоровья и запросов трафика конечных пользователей.

  • Используйте отдельные управляемые идентичности для аутентификации исходного источника и доступа Azure Front Door к Azure Key Vault.