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


Интеграция единого входа Microsoft Entra с AWS для доступа к одной учетной записи

Из этой статьи вы узнаете, как интегрировать AWS Single-Account Access с идентификатором Microsoft Entra. При интеграции доступа к AWS с одной учетной записью с Microsoft Entra ID, вы можете:

  • Контролируйте в Microsoft Entra ID, кто имеет доступ к AWS с одной учетной записью.
  • Позвольте пользователям автоматически входить в Single-Account Access AWS с помощью их учетных записей Microsoft Entra.
  • Управляйте вашими учетными записями в одном центральном месте.

Используйте приведенные ниже сведения, чтобы принять решение об использовании приложений единого входа AWS и AWS Single-Account Access в коллекции приложений Microsoft Entra.

Единый вход AWS

Единый вход AWS был добавлен в коллекцию приложений Microsoft Entra в феврале 2021 года. Это упрощает централизованное управление доступом к нескольким учетным записям AWS и приложениям AWS с помощью идентификатора Microsoft Entra. Федерация Microsoft Entra ID с AWS SSO один раз, и используйте AWS SSO для управления разрешениями во всех ваших учетных записях AWS из одного места. AWS SSO автоматически подготавливает разрешения и сохраняет их в актуальном виде при обновлении политик и назначений доступа. Конечные пользователи могут аутентифицироваться с помощью учетных данных Microsoft Entra для доступа к консоли AWS, интерфейса командной строки и интегрированные приложения AWS SSO.

Доступ AWS Single-Account

AWS Single-Account Access используется клиентами на протяжении нескольких лет и позволяет интегрировать Microsoft Entra ID с одной учетной записью AWS и использовать его для управления доступом к ролям AWS IAM. Администраторы AWS IAM определяют роли и политики в каждой учетной записи AWS. Для каждой учетной записи AWS администраторы Microsoft Entra настраивают федерацию с AWS IAM, назначают пользователей или группы на учетную запись и настраивают Microsoft Entra ID для отправки утверждений для авторизации доступа к ролям.

Функция AWS Единичный Sign-On AWS доступ с одной учетной записью
Условный доступ Поддерживает одну политику условного доступа для всех учетных записей AWS. Поддерживает одну политику условного доступа для всех учетных записей или пользовательских политик для каждой учетной записи.
Доступ к CLI Поддерживается Поддерживается
Управление привилегированными пользователями Поддержанный Не поддерживается
Централизованное управление учетными записями Централизованное управление учетными записями в AWS. Централизованное управление учетными записями в идентификаторе Microsoft Entra (вероятно, требуется корпоративное приложение Microsoft Entra для каждой учетной записи).
Сертификат SAML Единый сертификат Отдельные сертификаты для каждого приложения или учетной записи

Архитектура AWS Единого доступа к учётной записи

Скриншот, показывающий Microsoft Entra ID и их связь с AWS.

Вы можете настроить несколько идентификаторов для нескольких экземпляров. Например:

  • https://signin.aws.amazon.com/saml#1

  • https://signin.aws.amazon.com/saml#2

С этими значениями идентификатор Microsoft Entra удаляет значение #и отправляет правильное значение https://signin.aws.amazon.com/saml в качестве URL-адреса аудитории в токене SAML.

Мы рекомендуем именно этот подход по следующим причинам:

  • Каждое приложение предоставляет уникальный сертификат X509. Это значит, что у всех экземпляров приложения AWS разный срок действия сертификата, и ими можно управлять отдельно для каждой учетной записи AWS. В этом случае смена сертификатов происходит легче.

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

  • Вы можете назначить владельца приложения для каждого приложения. Этот пользователь может управлять приложением непосредственно в идентификаторе Microsoft Entra.

Примечание.

Убедитесь, что используется только приложение галереи.

Требования

Чтобы приступить к работе, потребуется следующее.

  • Подписка Microsoft Entra. Если у вас нет подписки, вы можете получить бесплатную учетную запись.
  • Подписка с поддержкой AWS IAM IdP.
  • Наряду с администратором облачных приложений, администратор приложений также может добавлять или управлять приложениями в Microsoft Entra ID. Дополнительные сведения см. в статье о встроенных ролях Azure.

Примечание.

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

Описание сценария

В этой статье описана настройка и проверка единого входа Microsoft Entra в тестовой среде.

  • AWS Single-Account Access поддерживает SSO, инициируемый как поставщиком услуг, так и поставщиком удостоверений.

Примечание.

Идентификатор этого приложения — фиксированное строковое значение, поэтому в одном клиенте можно настроить только один экземпляр.

Чтобы настроить интеграцию AWS Single-Account Access с идентификатором Microsoft Entra ID, необходимо добавить AWS Single-Account Access из коллекции в список управляемых приложений SaaS.

  1. Войдите в Центр администрирования Microsoft Entra как минимум администратор облачных приложений.
  2. Перейдите к Entra ID>корпоративным приложениям>Новое приложение.
  3. В разделе "Добавление из коллекции" введите AWS Single-Account Access в поле поиска.
  4. Выберите AWS Single-Account Access на панели результатов и добавьте это приложение. Подождите несколько секунд, пока приложение не будет добавлено в вашего арендатора.

Кроме того, можно использовать мастер настройки корпоративных приложений. В этом мастере можно добавить приложение в тенант, добавить пользователей и группы в приложение, назначить роли и также выполнить настройку единого входа (SSO). Дополнительные сведения о мастерах Microsoft 365 см. здесь.

Настройка и проверка единого входа Microsoft Entra для доступа к одной учетной записи AWS

Настройте и протестируйте Microsoft Entra SSO с AWS Single-Account Access, используя тестового пользователя B.Simon. Для работы единого входа в систему необходимо установить связь между пользователем Microsoft Entra и соответствующим пользователем в AWS Single-Account Access.

Чтобы настроить и протестировать SSO Microsoft Entra с Single-Account Access AWS, выполните следующие действия.

  1. Настройте единый вход Microsoft Entra , чтобы пользователи могли использовать эту функцию.
    1. Создайте тестового пользователя Microsoft Entra для тестирования единого входа Microsoft Entra с помощью B.Simon.
    2. Назначьте тестового пользователя Microsoft Entra , чтобы разрешить B.Simon использовать единый вход Microsoft Entra.
  2. Настройте единый вход AWS Single-Account Access для настройки параметров единого входа на стороне приложения.
    1. Создайте тестового пользователя в AWS Single-Account Access в качестве аналога пользователя B.Simon в AWS Single-Account Access, связанного с представлением пользователя в Microsoft Entra.
    2. Настройка подготовки ролей в AWS Single-Account Access
  3. Тест SSO — чтобы проверить, работает ли конфигурация.

Настройка SSO Microsoft Entra

Выполните следующие шаги, чтобы включить единую регистрацию Microsoft Entra.

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

  2. Перейдите к Entra ID>Корпоративные приложения>Доступ AWS Single-Account>Единый вход.

  3. На странице "Выбор метода единого входа" выберите SAML.

  4. На странице "Настройка единого входа" на странице SAML выберите значок карандаша для базовой конфигурации SAML , чтобы изменить параметры.

    Снимок экрана: изменение базовой конфигурации SAML.

  5. В разделе "Базовая конфигурация SAML" обновите идентификатор (идентификатор сущности) и URL-адрес ответа с одинаковым значением по умолчанию: https://signin.aws.amazon.com/saml Чтобы сохранить изменения конфигурации, необходимо нажать кнопку "Сохранить ".

  6. Приложение AWS ожидает проверочные утверждения SAML в определенном формате, а значит вам нужно добавить настраиваемые сопоставления атрибутов в конфигурацию атрибутов токена SAML. На следующем снимке экрана показан список атрибутов по умолчанию.

    Снимок экрана: атрибуты по умолчанию.

  7. В дополнение к описанному выше приложение AWS ожидает несколько дополнительных атрибутов в ответе SAML, как показано ниже. Эти атрибуты также заранее заполнены, но вы можете изменить их в соответствии со своими требованиями.

    Имя. Атрибут источника Пространство имен
    RoleSessionName (ИмяСессииРоли) пользователь.userprincipalname https://aws.amazon.com/SAML/Attributes
    Роль user.assignedroles https://aws.amazon.com/SAML/Attributes
    Длительность сессии пользователь.продолжительностьсессии https://aws.amazon.com/SAML/Attributes

    Примечание.

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

  8. На странице "Настройка единого входа" на странице SAML в диалоговом окне "Сертификат подписи SAML " (шаг 3) выберите "Добавить сертификат".

    Снимок экрана: создание сертификата SAML.

  9. Создайте новый сертификат подписи SAML и выберите новый сертификат. Введите адрес электронной почты для получения уведомлений о сертификатах.

    Снимок экрана: новый сертификат SAML.

  10. (Необязательно) Вы можете выбрать "Сделать сертификат активным".

  11. В разделе сертификата подписи SAML найдите XML-файл метаданных федерации и выберите "Скачать ", чтобы скачать сертификат и сохранить его на компьютере.

  12. В разделе "Настройка AWS Single-Account Access " скопируйте соответствующие URL-адреса в соответствии с вашим требованием.

    Снимок экрана, показывающий URL-адреса для копирования конфигурации.

Создание и назначение тестового пользователя Microsoft Entra

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

Настройка SSO для доступа к единой учетной записи AWS

  1. В другом окне браузера войдите на корпоративный сайт AWS в качестве администратора.

  2. На домашней странице AWS найдите IAM и выберите его.

    Снимок экрана: страница служб AWS с выделенным IAM.

  3. Перейдите к управлению доступом>поставщикам удостоверений и нажмите кнопку Добавить поставщика.

    Снимок экрана страницы IAM, где выделены

  4. На странице «Добавить поставщика удостоверений» выполните следующие действия.

    Снимок экрана: Настройка поставщика.

    a. Для типа поставщика выберите SAML.

    б. Для имени поставщика введите имя поставщика (например, WAAD).

    с. Чтобы отправить скачанный файл метаданных, выберите "Выбрать файл".

    д. Выберите "Добавить поставщика".

  5. Выберите Роли>Создать роль.

    Снимок экрана: страница

  6. На странице "Создание роли " выполните следующие действия.

    Снимок экрана: страница создания роли.

    a. Выберите тип доверенной сущности, выберите федерацию SAML 2.0.

    б. В разделе поставщика на основе SAML 2.0 выберите созданный ранее поставщик SAML (например, WAAD).

    с. Выберите "Разрешить программный доступ и доступ через консоль управления AWS".

    д. Нажмите кнопку "Далее".

  7. В диалоговом окне "Политики разрешений " вложите соответствующую политику для каждой организации. Затем нажмите кнопку "Далее".

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

  8. В диалоговом окне "Рецензирование " выполните следующие действия.

    Снимок экрана: диалоговое окно проверки.

    a. В поле Имя роли введите своё имя роли.

    б. В поле "Описание" введите описание роли.

    с. Выберите "Создать роль".

    д. Создайте столько ролей, сколько необходимо, и сопоставьте их с поставщиком удостоверений.

  9. Используйте учетные данные учётной записи сервисной службы AWS для получения ролей из учетной записи AWS в управлении доступом пользователей Microsoft Entra. Для этого откройте главную страницу консоли AWS.

  10. В разделе IAM выберите "Политики " и выберите "Создать политику".

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

  11. Создайте собственную политику для получения всех ролей из учетных записей AWS.

    Снимок экрана страницы

    a. В разделе "Создание политики" выберите вкладку JSON .

    б. Добавьте приведенный ниже код JSON в документ политики.

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                "iam:ListRoles"
                ],
                "Resource": "*"
            }
        ]
    }
    

    с. Нажмите кнопку "Далее": теги.

  12. Вы также можете добавить необходимые теги на следующей странице и нажмите кнопку "Далее: Проверка".

    Снимок экрана: страница

  13. Определите новую политику. Снимок экрана: страница

    a. В поле "Имя" введите AzureAD_SSOUserRole_Policy.

    б. В поле "Описание" введите эту политику, чтобы получить роли из учетных записей AWS.

    с. Выберите "Создать политику".

  14. Создайте учетную запись пользователя в службе IAM AWS. a. В консоли AWS IAM выберите "Пользователи" и выберите "Добавить пользователей".

    Снимок экрана: консоль AWS IAM с выделенным элементом

    б. В разделе "Указание сведений о пользователе " введите имя пользователя в качестве AzureADRoleManager и нажмите кнопку "Далее".

    Снимок экрана: страница «Добавить пользователя», где выделены имя пользователя и тип доступа.

    с. Создайте политику для этого пользователя.

    Снимок экрана: страница

    д. Выберите Подключить существующие политики напрямую.

    д) Найдите только что созданную политику в разделе фильтра AzureAD_SSOUserRole_Policy.

    ф. Выберите политику и нажмите кнопку "Далее".

  15. Просмотрите выбранные варианты и нажмите кнопку "Создать пользователя".

    Примечание.

    Создайте и скачайте сторонний ключ доступа для этого пользователя. Этот ключ используется в разделе подготовки пользователей Microsoft Entra для получения ролей из консоли AWS.

  16. Чтобы скачать учетные данные пользователя, включите доступ к консоли на вкладке "Учетные данные безопасности

  17. Введите эти учетные данные в раздел пользовательского управления Microsoft Entra, чтобы получить роли из консоли AWS. Снимок экрана: скачивание учетных данных пользователя.

Примечание.

AWS имеет набор разрешений/ограничений, необходимых для настройки AWS SSO. Дополнительные сведения об ограничениях AWS см. на этой странице.

Настройка предоставления ролей в доступе к AWS с одной учетной записью

  1. На портале управления Microsoft Entra в приложении AWS перейдите в раздел Управление предоставлением.

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

Заметка: Имя пользователя и пароль, возвращаемые при включении доступа к консоли, не нужны для значений clientecret и Secret Token. Вместо этого создайте сторонний ключ доступа для этого шага.

  1. Введите ключ доступа и секрет в полях clientecret и Secret Token соответственно.

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

    a. Введите ключ доступа пользователя AWS в поле clientecret .

    б. Введите секрет пользователя AWS в поле "Секретный токен ".

    с. Выберите "Проверить подключение".

    д. Сохраните этот параметр, нажав кнопку "Сохранить".

  2. В разделе Параметры для Состояние обеспечения выберите Вкл. Затем нажмите кнопку "Сохранить".

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

Примечание.

Служба предоставления импортирует роли только из AWS в Microsoft Entra ID. Служба не осуществляет подготовку пользователей и групп из Microsoft Entra ID в AWS.

Примечание.

После подготовки учетных данных необходимо дождаться запуска цикла начальной синхронизации. Выполнение синхронизации обычно занимает около 40 минут. Состояние можно увидеть в нижней части страницы подготовки в разделе "Текущее состояние".

Создание тестового пользователя AWS Single-Account Access

Цель этого раздела — создать пользователя с именем B.Simon в AWS Single-Account Access. Доступ AWS для одной учетной записи не требует создания пользователя в системе для единого входа, поэтому здесь не нужно выполнять никаких действий.

Тест единого входа

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

Инициировано поставщиком услуг:

  • Выберите "Тестировать это приложение", этот параметр перенаправляется в AWS Single-Account URL-адрес входа, где можно инициировать поток входа.

  • Перейдите по URL-адресу для единого входа в AWS Single-Account Access и начните процесс входа.

Инициировано поставщиком удостоверений личности

  • Выберите "Тестировать это приложение", и вы автоматически войдете в aws Single-Account Access, для которого настроили единый вход.

Вы можете также использовать портал "Мои приложения" корпорации Майкрософт для тестирования приложения в любом режиме. При выборе плитки AWS Single-Account Access в разделе "Мои приложения", если она настроена в режиме поставщика услуг (SP), вы будете перенаправлены на страницу входа в приложение для начала процесса входа; если же она настроена в режиме поставщика идентификации (IDP), вы автоматически войдете в AWS Single-Account Access, для которого настроили единый вход (SSO). Дополнительные сведения о моих приложениях см. в разделе "Общие сведения о моих приложениях".

Известные проблемы

  • Интеграция предоставления доступа для одной учетной записи AWS не может использоваться в регионах AWS в Китае.

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

  • Раздел Provisioning поддерживает ввод только одного набора учетных данных для одного клиента AWS за раз. Все импортированные роли записываются в свойство объекта Microsoft Entra ID для клиента AWS.

    Несколько арендаторов AWS (представленных servicePrincipals) можно добавить в Microsoft Entra ID из галереи для управления доступом. Существует известная проблема, из-за которой не удается автоматически записывать все импортированные роли из нескольких AWS servicePrincipals, используемых для предоставления ресурсов, в единую servicePrincipal, используемую для единого входа.

    В качестве обходного решения можно использовать API Microsoft Graph для извлечения всех appRoles импортированных в каждый AWS servicePrincipal, где настроено предоставление ресурсов. Позже вы сможете добавить эти строки идентификаторов ролей в servicePrincipal AWS, где настроен единый вход.

  • Роли должны соответствовать следующим требованиям, чтобы быть пригодными для импорта из AWS в Microsoft Entra ID.

    • Роли должны содержать ровно одного поставщика SAML, определенного в AWS.
    • Общая длина ARN (Имя ресурса Amazon) для роли и связанного с ней поставщика SAML должна быть менее 240 символов.

Журнал изменений

  • 12.01.2020: увеличена максимальная длина имени роли с 119 символов до 239 символов.

После настройки AWS Single-Account Access вы сможете применить функцию управления сеансами, которая в реальном времени защищает конфиденциальные данные вашей организации от хищения и несанкционированного доступа. Управление сеансом является расширением функции условного доступа. Узнайте, как применить управление сеансом с помощью Microsoft Defender для облачных приложений.