Амазонка Афина — это интерактивная служба запросов, которая упрощает анализ данных непосредственно в Простой сервис хранения Amazon (Amazon S3) с использованием стандартного SQL. Группы эксплуатации облака могут использовать Управление идентификацией и доступом AWS (IAM) для централизованного управления доступом к Athena. Это упрощает администрирование, позволяя управляющей команде контролировать доступ пользователей к рабочим группам Athena из централизованно управляемого Azure AD, подключенного к локальной Active Directory. Такая настройка снижает накладные расходы групп эксплуатации облака при управлении пользователями IAM. Athena поддерживает федерацию с помощью службы федерации Active Directory (ADFS), PingFederate, Okta и федерации Microsoft Azure Active Directory (Azure AD).
В этой записи блога показано, как настроить федерацию AWS IAM с Azure AD, подключенной к локальному AD, и настроить доступ Athena на уровне рабочей группы для разных пользователей. Мы рассмотрим два сценария:
- Управляемые пользователи и группы Azure AD, а также локальный AD.
- Локальные пользователи и группы, управляемые Active Directory, синхронизируются с Azure AD.
Мы не рассматриваем, как настроить синхронизацию между локальным AD и Azure AD с помощью Azure AD Connect. Дополнительную информацию о том, как интегрировать Azure AD с AWS Managed AD, см. Включите Office 365 с помощью AWS Managed Microsoft AD без синхронизации паролей пользователей. и как интегрировать Azure AD с локальным AD, см. статью Microsoft. Выборочная установка Azure Active Directory Connect..
Обзор решения
Это решение поможет вам настроить федерацию IAM с Azure AD, подключенной к локальному AD, и настроить доступ пользователей на уровне рабочей группы Athena. Вы можете контролировать доступ к рабочей группе либо через локальную группу AD, либо через группу Azure AD. Решение состоит из четырех разделов:
- Настройте Azure AD в качестве поставщика удостоверений (IdP):
- Настройте Azure AD в качестве поставщика удостоверений SAML для приложения AWS с одним аккаунтом.
- Настройте приложение Azure AD с делегированными разрешениями.
- Настройте IAM IdP и роли:
- Настройте поставщика удостоверений, доверяющего Azure AD.
- Настройте пользователя IAM с разрешением на чтение.
- Настройте роль и политики IAM для каждой рабочей группы Athena.
- Настройте доступ пользователей в Azure AD:
- Настройте автоматическое предоставление ролей IAM.
- Настройте доступ пользователей к роли рабочей группы Athena.
- Доступ к Афине:
- Получите доступ к Athena с помощью веб-интерфейса Microsoft. Портал моих приложений.
- Доступ к Афине с помощью Инструментальные средства SQL / J бесплатный, независимый от СУБД, кроссплатформенный инструмент SQL-запросов.
Следующая диаграмма иллюстрирует архитектуру решения.
Рабочий процесс решения включает следующие шаги:
- Рабочая станция разработчика подключается к Azure AD через драйвер JDBC Athena SQL Workbench/j для запроса токена SAML (двухэтапный процесс OAuth).
- Azure AD отправляет трафик проверки подлинности обратно в локальную среду через агент сквозной аутентификации Azure AD или ADFS.
- Агент сквозного доступа Azure AD или ADFS подключается к локальному контроллеру домена и проверяет подлинность пользователя.
- Агент сквозного доступа или ADFS отправляет маркер успеха в Azure AD.
- Azure AD создает токен SAML, содержащий назначенную роль IAM, и отправляет его клиенту.
- Клиент подключается к Сервис токенов безопасности AWS (AWS STS) и предоставляет токен SAML, чтобы взять на себя роль Athena, и генерирует временные учетные данные.
- AWS STS отправляет клиенту временные учетные данные.
- Клиент использует временные учетные данные для подключения к Athena.
Предпосылки
Перед настройкой решения необходимо выполнить следующие требования:
- На стороне Azure AD выполните следующее:
- Настройте сервер Azure AD Connect и синхронизируйте его с локальным AD.
- Настройка сквозной передачи Azure AD или федерации Microsoft ADFS между Azure AD и локальным AD.
- Создайте трех пользователей (
user1
,user2
,user3
) и три группы (athena-admin-adgroup
,athena-datascience-adgroup
,athena-developer-adgroup
) для трех соответствующих рабочих групп Athena
- На стороне Athena создайте три рабочие группы Athena:
athena-admin-workgroup
,athena-datascience-workgroup
,athena-developer-workgroup
Дополнительную информацию об использовании примеров рабочих групп Athena см. Общедоступное озеро данных для анализа данных о COVID-19.
Настройка Azure AD
В этом разделе мы рассмотрим детали конфигурации Azure AD для Athena в подписке Microsoft Azure. В основном мы регистрируем приложение, настраиваем федерацию, делегируем разрешения приложения и генерируем секрет приложения.
Установите Azure AD в качестве поставщика удостоверений SAML для приложения AWS с одним аккаунтом.
Чтобы настроить Azure AD в качестве поставщика удостоверений SAML, выполните следующие действия:
- Войдите в Портал Azure с учетными данными глобального администратора Azure AD.
- Выберите Azure Active Directory.
- Выберите Корпоративные приложения.
- Выберите Новое приложение.
- Найдите
Amazon
в строке поиска. - Выберите Доступ к AWS через единый аккаунт.
- Что касается Имя, вводить
Athena-App
. - Выберите Создать.
- В Первые шаги в разделе Настроить единый вход, выберите Начать.
- Что касается Выберите метод единого входа, выберите SAML.
- Что касается Базовая конфигурация SAML, выберите Изменить.
- Что касается Идентификатор (ID объекта), войти
https://signin.aws.amazon.com/saml#1
. - Выберите Сохранить.
- Под Сертификат подписи SAML, Для XML метаданных федерации, выберите Скачать.
Этот файл необходим для настройки IAM IdP в следующем разделе. Сохраните этот файл на своем локальном компьютере, чтобы использовать его позже при настройке IAM на AWS.
Настройте приложение Azure AD с делегированными разрешениями.
Чтобы настроить приложение Azure AD, выполните следующие действия:
- Выберите Azure Active Directory.
- Выберите Регистрация приложений и Все приложения.
- Искать и выбирать Афина-приложение.
- Обратите внимание на значения для ID приложения (клиента) и ID каталога (арендатора).
Эти значения понадобятся вам в соединении JDBC при подключении к Athena.
- Под Разрешения API, выберите Добавить разрешение.
- Выберите График Microsoft и Делегированные разрешения.
- Что касается Выберите разрешения, ищи
user.read
. - Что касается Информация о пользователе, выберите Пользователь.Чтение.
- Выберите Добавить разрешение.
- Выберите Предоставить согласие администратора и Да.
- Выберите Аутентификация и Добавить платформу.
- Выберите Мобильные и настольные приложения.
- Под Пользовательские URI перенаправления, войти
http://localhost/athena
. - Выберите Настроить.
- Выберите Сертификаты и секреты и Секрет нового клиента.
- Введите описание.
- Что касается Истекает, выберите 24 месяцев.
- Скопируйте значение секрета клиента, которое будет использоваться при настройке соединения JDBC.
Настройка IAM IdP и ролей
В этом разделе мы рассмотрим настройку IAM в учетной записи AWS. В основном мы создадим пользователя IAM, роли и политики.
Настройка поставщика удостоверений, доверяющего Azure AD
Чтобы настроить поставщика удостоверений, доверяющего Azure AD, выполните следующие действия:
- На консоли IAM выберите Поставщики удостоверений в навигационной панели.
- Выберите Добавить провайдера.
- Что касается Тип провайдера, выберите SAML.
- Что касается Имя поставщика, войти
AzureADAthenaProvider
. - Что касается Документ метаданных, отправьте файл, скачанный с портала Azure.
- Выберите Добавить провайдера.
Настройка пользователя IAM с разрешением на чтение роли
Чтобы настроить пользователя IAM, выполните следующие действия:
- На консоли IAM выберите Пользователи в навигационной панели.
- Выберите Добавить пользователя.
- Что касается , войти
ReadRoleUser
. - Что касается Тип доступа, наведите на Программный доступ.
- Выберите Далее: разрешения.
- Что касается Установить разрешения, выберите Прикрепить существующие политики напрямую.
- Выберите Создать политику.
- Выберите JSON и введите следующую политику, которая предоставляет доступ на чтение для перечисления ролей в IAM:
- Выберите Далее: Теги.
- Выберите Далее: Обзор.
- Что касается Фамилия, войти
readrolepolicy
. - Выберите Создать политику.
- На Добавить пользователя вкладка, найдите и выберите роль
readrole
. - Выберите Далее: теги.
- Выберите Далее: Обзор.
- Выберите Создать пользователя.
- Загрузите файл .csv, содержащий идентификатор ключа доступа и секретный ключ доступа.
Мы используем их при настройке автоматической подготовки Azure AD.
Настройте роль и политики IAM для каждой рабочей группы Athena.
Чтобы настроить роли и политики IAM для рабочих групп Athena, выполните следующие шаги:
- На консоли IAM выберите роли в навигационной панели.
- Выберите Создать роль.
- Что касается Выберите тип доверенного лица, выберите Федерация SAML 2.0.
- Что касается SAML-провайдер, выберите AzureADAthenaProvider.
- Выберите Разрешить программный доступ и доступ к Консоли управления AWS.
- Под состояние, выберите Основные .
- Выберите SAML:аудио.
- Что касается состояние, наведите на СтрокаEquals.
- Что касается Значение, войти
http://localhost/athena
. - Выберите Далее: разрешения.
- Выберите Создать политику.
- Выберите JSON и введите следующую политику (укажите ARN вашей рабочей группы):
Политика предоставляет полный доступ к рабочей группе Athena. Это основано на Политика, управляемая AWS AmazonAthenaFullAccess
и примеры политик рабочей группы.
- Выберите Далее: Теги.
- Выберите Далее: Обзор.
- Что касается Фамилия, войти
athenaworkgroup1policy
. - Выберите Создать политику.
- На Создать роль вкладка, поиск
athenaworkgroup1policy
и выберите политику. - Выберите Далее: Теги.
- Выберите Далее: Обзор.
- Выберите Создать роль.
- Что касается Фамилия, войти
athenaworkgroup1role
. - Выберите Создать роль.
Настройка доступа пользователей в Azure AD
В этом разделе мы настроим автоматическую подготовку и назначим пользователей приложениям с портала Microsoft Azure.
Настройка автоматического предоставления роли IAM
Чтобы настроить автоматическую подготовку роли IAM, выполните следующие действия:
- Войдите в Портал Azure с учетными данными глобального администратора Azure AD.
- Выберите Azure Active Directory.
- Выберите Корпоративные приложения , а затем выбрать Афина-приложение.
- Выберите Предоставление учетных записей пользователей.
- В Резервирование раздел, выбрать Начать.
- Что касается Режим обеспечения, выберите Автоматический.
- Расширьте Учетные данные администратора и заселить секрет клиента и Секретный жетон с идентификатором ключа доступа и секретным ключом доступа
ReadRoleUser
, Соответственно. - Выберите Проверить подключение и Сохранить.
- Выберите Начать подготовку.
Завершение начального цикла может занять некоторое время, после чего роли IAM заполняются в Azure AD.
Настройка доступа пользователей к роли рабочей группы Athena
Чтобы настроить доступ пользователей к роли рабочей группы, выполните следующие действия:
- Войдите в Портал Azure с учетными данными глобального администратора Azure AD.
- Выберите Azure Active Directory.
- Выберите Корпоративные приложения , а затем выбрать Афина-приложение.
- Выберите Назначение пользователей и групп и Добавить пользователя/группу.
- Под Пользователи и группы, выберите группу, которой вы хотите назначить разрешение Athena. Для этого поста мы используем
athena-admin-adgroup
; альтернативно вы можете выбрать user1. - Выберите Выберите.
- Что касается Выберите роль, выберите роль
athenaworkgroup1role
. - Выберите Выберите.
- Выберите Назначать.
Доступ к Афине
В этом разделе мы покажем, как получить доступ к Athena из консоли AWS и инструмента разработчика SQL Workbench/J.
Получите доступ к Athena с помощью веб-портала Microsoft My Apps.
Чтобы использовать портал Microsoft My Apps для доступа к Athena, выполните следующие действия:
- Войдите в Портал Azure с учетными данными глобального администратора Azure AD.
- Выберите Azure Active Directory
- Выберите Корпоративные приложения , а затем выбрать Афина-приложение.
- Выберите
- Объекты.
- Скопируйте значение для URL-адрес доступа пользователя.
- Откройте веб-браузер и введите URL-адрес.
Ссылка перенаправит вас на страницу входа в Azure.
- Войдите в систему, используя учетные данные локального пользователя.
Вы перенаправлены на Консоль управления AWS.
Доступ к Athena с помощью SQL Workbench/J
В организациях со строгим регулированием внутренним пользователям не разрешается использовать консоль для доступа к Athena. В таких случаях вы можете использовать SQL Workbench/J, инструмент с открытым исходным кодом, который обеспечивает подключение к Athena с помощью драйвера JDBC.
- Загрузите последнюю версию Афина JDBC-драйвер (выберите соответствующий драйвер в зависимости от вашей версии Java).
- Скачайте и установите Инструментальные средства SQL / J.
- Open SQL Workbench/J.
- На Файл Меню, выберите Окно подключения.
- Выберите Управление драйверами.
- Что касается Фамилия, введите имя вашего драйвера.
- Перейдите в папку, в которую вы загрузили и распаковали драйвер.
- Выберите OK.
Теперь, когда мы настроили драйвер Athena, пришло время подключиться к Athena. Вам необходимо заполнить URL-адрес подключения, имя пользователя и пароль.
Используйте следующую строку подключения для подключения к Athena с учетной записью пользователя без MFA (предоставьте значения, собранные ранее в сообщении):
Чтобы подключиться с использованием учетной записи пользователя с включенным MFA, используйте поставщик учетных данных Azure AD в браузере. Вам необходимо создать URL-адрес подключения и указать имя пользователя, имя пользователя и пароль.
Используйте следующую строку подключения для подключения к Athena с учетной записью пользователя, в которой включен MFA (предоставьте значения, которые вы собрали ранее):
Замените текст, выделенный красным, деталями, собранными ранее в статье.
Когда соединение установлено, вы можете запускать запросы к Athena.
Конфигурация прокси
Если вы подключаетесь к Athena через прокси-сервер, убедитесь, что прокси-сервер разрешает порт 444. API потоковой передачи набора результатов использует порт 444 на сервере Athena для исходящей связи. Установить ProxyHost
свойство к IP-адресу или имени хоста вашего прокси-сервера. Установить ProxyPort
свойству номер TCP-порта, который прокси-сервер использует для прослушивания клиентских подключений. См. следующий код:
Обзор
В этом посте мы настроили федерацию IAM с Azure AD, подключенной к локальному AD, и настроили детальный доступ к рабочей группе Athena. Мы также рассмотрели, как получить доступ к Athena через консоль с помощью веб-портала Microsoft My Apps и инструмента SQL Workbench/J. Мы также обсудили, как работает соединение через прокси. Ту же инфраструктуру объединения можно использовать и для настройки драйвера ODBC. Вы также можете использовать инструкции в этом посте для настройки Azure IdP на основе SAML для включения федеративного доступа к рабочим группам Athena.
Об авторе
Niraj Кумар является главным техническим менеджером по финансовым услугам в AWS, где он помогает клиентам проектировать, проектировать, создавать, эксплуатировать и поддерживать рабочие нагрузки на AWS безопасным и надежным способом. Он имеет более чем 20-летний разнообразный опыт работы в сфере ИТ в области корпоративной архитектуры, облачных технологий и виртуализации, безопасности, IAM, архитектуры решений, а также информационных систем и технологий. В свободное время он любит наставничество, тренировки, походы, просмотр документальных фильмов с сыном и чтение чего-то нового каждый день.
- '
- &
- 100
- 11
- 420
- 7
- 9
- доступ
- Учетная запись
- Действие
- активный
- Active Directory
- Ad
- Администратор
- Все
- Позволяющий
- Amazon
- анализ
- API
- приложение
- Приложения
- Программы
- архитектура
- гайд
- Аутентификация
- AWS
- Лазурный
- Блог
- браузер
- строить
- случаев
- облако
- код
- Связь
- связи
- Коммутация
- связь
- согласие
- Covid-19.
- Полномочия
- кросс-платформенной
- Клиенты
- данным
- Озеро данных
- день
- dc
- Проект
- Застройщик
- документальные фильмы
- водитель
- Предприятие
- опыт
- Поля
- финансовый
- финансовые услуги
- Бесплатно
- полный
- Глобальный
- гранты
- группы
- Как
- How To
- HTTPS
- IAM
- Личность
- информация
- Инфраструктура
- интерактивный
- IP
- IP-адрес
- IT
- Java
- Основные
- последний
- уровень
- LINK
- локальным
- расположение
- смотрел
- управление
- МИД
- Microsoft
- Мобильный телефон
- Навигация
- Управление 365
- организации
- Пароль
- плагин
- сборах
- политика
- Портал
- Основной
- собственность
- полномочие
- что такое варган?
- Reading
- переориентировать
- Требования
- ресурс
- Run
- Поиск
- безопасность
- Услуги
- набор
- просто
- его
- SQL
- заявление
- диск
- потоковый
- подписка
- успех
- поддержка
- Поддержка
- системы
- Технический
- технологии
- временный
- время
- знак
- трафик
- пользователей
- ценностное
- Web
- веб-браузер
- рабочий
- работает
- лет