Студія Amazon SageMaker це веб-інтегроване середовище розробки (IDE) для машинного навчання (ML), яке дозволяє створювати, навчати, налагоджувати, розгортати та контролювати ваші моделі ML. Для надання Studio у вашому обліковому записі AWS і регіоні вам спочатку потрібно створити Amazon SageMaker домен — конструкція, яка інкапсулює ваше середовище ML. Більш конкретно, домен SageMaker складається з асоційованого Еластична файлова система Amazon (Amazon EFS), список авторизованих користувачів, а також різні засоби безпеки, програми, політики та Віртуальна приватна хмара Amazon (Amazon VPC) конфігурації.
Створюючи свій домен SageMaker, ви можете вибрати будь-який із них Центр ідентифікації AWS IAM (наступник AWS Single Sign-On) або Управління ідентифікацією та доступом AWS (IAM) для методів автентифікації користувача. Обидва методи автентифікації мають власний набір випадків використання; у цій публікації ми зосередимося на доменах SageMaker із IAM Identity Center або режимом єдиного входу (SSO) як методом автентифікації.
У режимі SSO ви налаштовуєте користувача та групу SSO в IAM Identity Center, а потім надаєте доступ групі або користувачеві SSO з консолі Studio. Наразі всі користувачі SSO у домені успадковують роль виконання домену. Це може працювати не для всіх організацій. Наприклад, адміністратори можуть захотіти налаштувати дозволи IAM для користувача Studio SSO на основі членства в групі Active Directory (AD). Крім того, оскільки адміністратори зобов’язані вручну надавати користувачам SSO доступ до Studio, процес може не масштабуватися під час реєстрації сотень користувачів.
У цьому дописі ми надаємо рекомендації щодо рішення надання користувачам SSO у Studio найменших дозволів на основі членства в групі AD. Ця інструкція дає вам змогу швидко масштабуватись для підключення сотень користувачів до Studio та досягти рівня безпеки та відповідності вимогам.
Огляд рішення
Наступна діаграма ілюструє архітектуру рішення.
Робочий процес надання користувачів AD у Studio включає такі кроки:
- Налаштування a Домен студії в режимі SSO.
- Для кожної групи AD:
- Налаштуйте свою роль виконання Studio за допомогою відповідних детальних політик IAM
- Запишіть запис у зіставлення ролей групи AD Amazon DynamoDB таблиці.
Крім того, ви можете прийняти стандарт іменування для ролей IAM ARN на основі назви групи AD і отримати ARN ролі IAM без необхідності зберігати відображення у зовнішній базі даних.
- Синхронізуйте користувачів і групи AD із AWS Identity Center:
- Якщо ви використовуєте постачальника ідентифікаційної інформації (IdP), який підтримує SCIM, скористайтеся інтеграцією SCIM API з IAM Identity Center.
- Якщо ви використовуєте самокерований AD, ви можете використовувати AD Connector.
- Коли групу AD буде створено у вашій корпоративній AD, виконайте такі дії:
- Створіть відповідну групу єдиного входу в IAM Identity Center.
- Пов’яжіть групу SSO із доменом Studio за допомогою консолі SageMaker.
- Коли користувач AD створюється у вашій корпоративній AD, відповідний користувач SSO створюється в IAM Identity Center.
- Коли користувача AD призначено групі AD, API центру ідентифікації IAM (CreateGroupMembership) викликається, і створюється членство в групі SSO.
- Ви ввійшли до попередньої події AWS CloudTrail з ім'ям
AddMemberToGroup
. - An Amazon EventBridge правило прослуховує події CloudTrail і відповідає
AddMemberToGroup
шаблон правила. - Правило EventBridge запускає ціль AWS Lambda функції.
- Ця функція Lambda викличе API центру ідентифікації IAM, отримає інформацію про користувача та групу єдиного входу та виконає наступні дії для створення профілю користувача Studio (Створити профіль користувача) для користувача SSO:
- Перегляньте таблицю DynamoDB, щоб отримати роль IAM, що відповідає групі AD.
- Створіть профіль користувача з користувачем SSO та роллю IAM, отриманою з таблиці пошуку.
- Користувач SSO отримує доступ до Studio.
- Користувач SSO перенаправляється до Studio IDE через URL-адресу домену Studio.
Зауважте, що на момент написання Крок 4b (пов’язати групу SSO з доменом Studio) має виконуватися вручну адміністратором за допомогою консолі SageMaker на рівні домену SageMaker.
Налаштуйте функцію Lambda для створення профілів користувачів
Рішення використовує функцію Lambda для створення профілів користувачів Studio. Ми надаємо наведений нижче зразок функції Lambda, який можна скопіювати та змінити відповідно до ваших потреб щодо автоматизації створення профілю користувача Studio. Ця функція виконує такі дії:
- Отримайте CloudTrail
AddMemberToGroup
подія від EventBridge. - Отримати студію
DOMAIN_ID
зі змінної середовища (ви також можете жорстко закодувати ідентифікатор домену або також використовувати таблицю DynamoDB, якщо у вас кілька доменів). - Читайте з фіктивної таблиці розмітки, щоб зіставити користувачів AD із ролями виконання. Ви можете змінити це для отримання з таблиці DynamoDB, якщо ви використовуєте підхід, керований таблицею. Якщо ви використовуєте DynamoDB, ролі виконання вашої функції Lambda також потрібні дозволи на читання з таблиці.
- Отримайте інформацію про користувача SSO та членство в групі AD із IAM Identity Center на основі даних подій CloudTrail.
- Створіть профіль користувача Studio для користувача SSO з деталями SSO та відповідною роллю виконання.
Зауважте, що за замовчуванням роль виконання Lambda не має доступу до створення профілів користувачів або списку користувачів SSO. Створивши функцію Lambda, отримайте доступ до ролі виконання функції в IAM і додайте наведену нижче політику як вбудовану політику після зменшення обсягу відповідно до вимог вашої організації.
Налаштуйте правило EventBridge для події CloudTrail
EventBridge — це безсерверна служба шини подій, яку можна використовувати для підключення додатків із даними з різних джерел. У цьому рішенні ми створюємо тригер на основі правил: EventBridge прослуховує події та збігається з наданим шаблоном і запускає функцію Lambda, якщо збіг шаблону успішний. Як пояснюється в огляді рішення, ми слухаємо AddMemberToGroup
подія. Щоб налаштувати його, виконайте такі кроки:
- На консолі EventBridge виберіть Правила у навігаційній панелі.
- Вибирати Створити правило.
- Введіть назву правила, наприклад,
AddUserToADGroup
. - За бажанням введіть опис.
- Select дефолт для автобуса події.
- під Тип правилавиберіть Правило з шаблоном події, Потім виберіть МАЙБУТНІ.
- на Побудуйте шаблон події сторінку, виберіть Джерело події as Події AWS або партнерські події EventBridge.
- під Шаблон події, виберіть Спеціальні шаблони (редактор JSON) та введіть такий шаблон:
- Вибирати МАЙБУТНІ.
- на Виберіть ціль(и) виберіть службу AWS для цільового типу, функцію Lambda як ціль і функцію, яку ви створили раніше, а потім виберіть МАЙБУТНІ.
- Вибирати МАЙБУТНІ на Налаштувати теги сторінку, потім виберіть Створити правило на Перегляньте та створіть стр.
Після встановлення функції Lambda та правила EventBridge ви можете перевірити це рішення. Для цього відкрийте свій IdP і додайте користувача до однієї з груп AD із зіставленою роллю виконання Studio. Щойно ви додасте користувача, ви можете перевірити журнали функції Lambda, щоб перевірити подію, а також побачити автоматично підготовленого користувача Studio. Крім того, ви можете використовувати Описати профіль користувача Виклик API для перевірки того, що користувача створено з відповідними дозволами.
Підтримка кількох облікових записів Studio
Щоб підтримувати кілька облікових записів Studio з попередньою архітектурою, ми рекомендуємо такі зміни:
- Налаштуйте групу AD, зіставлену з кожним рівнем облікового запису Studio.
- Налаштуйте роль IAM на рівні групи в кожному обліковому записі Studio.
- Налаштуйте або отримайте групу для зіставлення ролі IAM.
- Налаштуйте лямбда-функцію для виконання припущення ролі між обліковими записами, на основі зіставлення ролі IAM ARN і створеного профілю користувача.
Деініціалізація користувачів
Коли користувача вилучено зі своєї групи AD, ви також повинні скасувати його доступ до домену Studio. За допомогою системи єдиного входу, коли користувача видаляється, він автоматично вимикається в IAM Identity Center, якщо синхронізація AD із IAM Identity Center налаштована, і його доступ до програми Studio негайно скасовується.
Однак профіль користувача в Studio все ще зберігається. Ви можете додати подібний робочий процес із CloudTrail і функцією Lambda, щоб видалити профіль користувача зі Studio. Тепер тригер EventBridge має прослуховувати DeleteGroupMembership подія. У функції Lambda виконайте такі дії:
- Отримайте назву профілю користувача з ідентифікатора користувача та групи.
- Перелічіть усі запущені програми для профілю користувача за допомогою ListApps Виклик API, фільтрація за
UserProfileNameEquals
параметр. Обов’язково перевірте відповідь із розбивкою на сторінки, щоб перелічити всі програми для користувача. - Видаліть усі запущені програми для користувача та зачекайте, поки всі програми будуть видалені. Ви можете використовувати DescribeApp API для перегляду статусу програми.
- Коли всі програми знаходяться в a Віддалений стан (або не вдалося), видалити профіль користувача.
За допомогою цього рішення адміністратори платформи ML можуть підтримувати членство в групах в одному центральному місці та автоматизувати керування профілями користувачів Studio за допомогою функцій EventBridge і Lambda.
У наступному коді показано приклад події CloudTrail:
У наведеному нижче коді показано зразок запиту API профілю користувача Studio:
Висновок
У цій публікації ми обговорили, як адміністратори можуть масштабувати адаптацію Studio для сотень користувачів на основі їх членства в групі AD. Ми продемонстрували наскрізну архітектуру рішення, яку організації можуть застосувати для автоматизації та масштабування процесу реєстрації відповідно до своїх потреб у гнучкості, безпеці та відповідності. Якщо ви шукаєте масштабоване рішення для автоматизації реєстрації користувачів, спробуйте це рішення та залиште свій відгук нижче! Щоб дізнатися більше про адаптацію до Studio, див На борту до домену Amazon SageMaker.
Про авторів
Рам Віттал є архітектором рішень ML Specialist в AWS. Він має понад 20 років досвіду розробки та створення розподілених, гібридних і хмарних програм. Він захоплений створенням безпечних і масштабованих рішень штучного інтелекту/ML і великих даних, які допомагають корпоративним клієнтам перейти до впровадження хмарних технологій та оптимізації для покращення бізнес-результатів. У вільний час він катається на мотоциклі та гуляє зі своєю 2-річною вівцею-дудлом!
Дурга Сурі є архітектором рішень ML у команді Amazon SageMaker Service SA. Вона прагне зробити машинне навчання доступним для всіх. За 4 роки роботи в AWS вона допомагала створювати платформи AI/ML для корпоративних клієнтів. Коли вона не працює, вона любить прогулянки на мотоциклі, загадкові романи та походи зі своїм 5-річним хаскі.
- Розповсюдження контенту та PR на основі SEO. Отримайте посилення сьогодні.
- EVM Фінанси. Уніфікований інтерфейс для децентралізованих фінансів. Доступ тут.
- Quantum Media Group. ІЧ/ПР посилений. Доступ тут.
- PlatoAiStream. Web3 Data Intelligence. Розширення знань. Доступ тут.
- джерело: https://aws.amazon.com/blogs/machine-learning/onboard-users-to-amazon-sagemaker-studio-with-active-directory-group-specific-iam-roles/
- : має
- :є
- : ні
- $UP
- 1
- 11
- 116
- 20
- 20 роки
- 200
- 22
- 24
- 7
- 9
- a
- МЕНЮ
- Прийняти
- доступ
- доступною
- рахунки
- Рахунки
- Achieve
- дію
- дії
- активний
- Ad
- додавати
- доданий
- Додатково
- адмін
- Адміністратори
- прийняти
- Прийняття
- після
- проти
- AI / ML
- ВСІ
- дозволяти
- Також
- Amazon
- Amazon SageMaker
- Студія Amazon SageMaker
- Amazon Web Services
- an
- та
- API
- Інтерфейси
- додаток
- застосування
- підхід
- відповідний
- додатка
- архітектура
- ЕСТЬ
- AS
- призначений
- Юрист
- асоційований
- припущення
- At
- приєднувати
- Authentication
- уповноважений
- автоматизувати
- автоматично
- автоматизація
- AWS
- назад
- заснований
- BE
- оскільки
- було
- Великий
- Великий даних
- тіло
- обидва
- будувати
- Створюємо
- bus
- бізнес
- by
- call
- CAN
- випадків
- Центр
- центральний
- зміна
- Зміни
- характер
- перевірка
- Вибирати
- клієнт
- хмара
- прийняття хмари
- код
- COM
- повний
- дотримання
- З'єднуватися
- складається
- Консоль
- будувати
- контекст
- Корпоративний
- Відповідний
- створювати
- створений
- створення
- створення
- В даний час
- Клієнти
- дані
- Database
- дефолт
- продемонстрований
- розгортання
- description
- деталь
- деталі
- розробка
- інвалід
- обговорювалися
- розподілений
- do
- Ні
- справи
- домен
- домени
- Не знаю
- вниз
- кожен
- Раніше
- редактор
- ефект
- або
- ще
- дозволяє
- кінець в кінець
- Що натомість? Створіть віртуальну версію себе у
- підприємство
- запис
- Навколишнє середовище
- Event
- Події
- все
- приклад
- виконання
- досвід
- пояснені
- зовнішній
- false
- зворотний зв'язок
- філе
- фільтрація
- Перший
- Сфокусувати
- після
- для
- від
- функція
- Функції
- Крім того
- отримати
- надавати
- надається
- Group
- Групи
- керівництво
- обробляти
- Мати
- he
- допомога
- допоміг
- її
- його
- Як
- HTML
- HTTP
- HTTPS
- Сотні
- гібрид
- ID
- Особистість
- if
- ілюструє
- негайно
- імпорт
- удосконалювати
- in
- includes
- інформація
- екземпляр
- інтегрований
- інтеграція
- викликали
- IT
- подорож
- json
- вивчення
- найменш
- Залишати
- дозволяє
- рівень
- список
- розташування
- увійшли
- логіка
- шукати
- пошук
- любить
- машина
- навчання за допомогою машини
- підтримувати
- зробити
- Робить
- управління
- вручну
- відображення
- матч
- узгодження
- Може..
- Зустрічатися
- член
- членство
- членство
- метод
- методика
- ML
- режим
- Моделі
- змінювати
- монітор
- більше
- мотоцикл
- множинний
- Таємниця
- ім'я
- іменування
- навігація
- Необхідність
- необхідний
- нужденних
- потреби
- нічого
- зараз
- отриманий
- of
- ОКТА
- on
- Onboard
- На борту
- один раз
- ONE
- відкрити
- оптимізація
- or
- організація
- організації
- OS
- з
- Результати
- над
- огляд
- власний
- сторінка
- pane
- параметр
- партнер
- пристрасний
- Викрійки
- моделі
- Виконувати
- виконується
- виступає
- Дозволи
- зберігається
- місце
- платформа
- Платформи
- plato
- Інформація про дані Платона
- PlatoData
- політика
- пошта
- приватний
- привілей
- процес
- профіль
- Профілі
- забезпечувати
- за умови
- Постачальник
- забезпечення
- швидко
- Читати
- рекомендувати
- регіон
- видаляти
- Вилучено
- запросити
- вимагається
- Вимога
- ресурс
- відповідь
- повертати
- Роль
- ролі
- Правило
- біг
- s
- SA
- мудрець
- масштабовані
- шкала
- Оцінка масштабу
- безпечний
- безпеку
- побачити
- Без сервера
- обслуговування
- Послуги
- комплект
- вона
- Повинен
- Шоу
- аналогічний
- з
- один
- So
- рішення
- Рішення
- Source
- Джерела
- спеціаліст
- standard
- стан
- Заява
- Статус
- Крок
- заходи
- Як і раніше
- зберігати
- студія
- успішний
- підтримка
- Опори
- таблиця
- Мета
- команда
- тест
- Що
- Команда
- їх
- потім
- це
- через
- час
- до
- поїзд
- викликати
- правда
- намагатися
- тип
- невідомий
- до
- URL
- використання
- користувач
- користувачі
- використовує
- використання
- значення
- різноманітність
- перевірити
- версія
- через
- вид
- Віртуальний
- обсяг
- чекати
- хотіти
- we
- Web
- веб-сервіси
- Web-Based
- ДОБРЕ
- коли
- волі
- з
- без
- Work
- робочий
- робочий
- лист
- років
- Ти
- вашу
- зефірнет