Вы можете получить доступ Студия Amazon SageMaker блокноты из г. Создатель мудреца Амазонки консоль через Управление идентификацией и доступом AWS (IAM) аутентифицированная федерация от вашего поставщика удостоверений (IdP), такого как Okta. Когда пользователь Studio открывает ссылку на блокнот, Studio проверяет политику IAM федеративного пользователя для авторизации доступа, а также создает и разрешает предварительно подписанный URL-адрес для пользователя. Поскольку консоль SageMaker работает в интернет-домене, этот сгенерированный предварительно подписанный URL-адрес виден в сеансе браузера. Это представляет собой нежелательный вектор угрозы для кражи и получения доступа к данным клиентов, когда не применяются надлежащие меры контроля доступа.
Studio поддерживает несколько методов принудительного управления доступом к предустановленным URL-адресам:
- Проверка IP-адреса клиента с использованием условия политики IAM
aws:sourceIp
- Проверка клиента VPC с использованием условия IAM
aws:sourceVpc
- Проверка конечной точки клиента VPC с использованием условия политики IAM
aws:sourceVpce
При доступе к блокнотам Studio из консоли SageMaker единственным доступным вариантом является использование проверки IP-адреса клиента с условием политики IAM. aws:sourceIp
. Однако вы можете использовать продукты маршрутизации трафика браузера, такие как Zscaler, чтобы обеспечить масштабирование и соответствие требованиям для доступа в Интернет для ваших сотрудников. Эти продукты для маршрутизации трафика генерируют собственные исходные IP-адреса, диапазон IP-адресов которых не контролируется корпоративным клиентом. Это делает невозможным для этих корпоративных клиентов использовать aws:sourceIp
состояние.
Чтобы использовать проверку конечной точки клиента VPC с помощью условия политики IAM aws:sourceVpce
, создание предварительно подписанного URL-адреса должно происходить в том же клиентском VPC, где развернута Studio, а разрешение предварительно подписанного URL-адреса должно происходить через конечную точку Studio VPC в клиентском VPC. Это разрешение предварительно подписанного URL-адреса во время доступа для пользователей корпоративной сети может быть выполнено с помощью правил переадресации DNS (как в Zscaler, так и в корпоративном DNS), а затем в конечную точку VPC клиента с использованием Amazon Route 53 входящий резолвер.
В этой части мы обсудим общую архитектуру для защиты предварительно подписанного URL-адреса Studio и продемонстрируем, как настроить базовую инфраструктуру для создания и запуска предварительно подписанного URL-адреса Studio через конечную точку VPC через частную сеть без подключения к Интернету. Это служит базовым уровнем для предотвращения кражи данных внешними злоумышленниками, получающими доступ к предварительно подписанному URL-адресу Studio, а также несанкционированного или поддельного доступа корпоративных пользователей в корпоративной среде.
Обзор решения
На следующей диаграмме показана всеобъемлющая архитектура решения.
Процесс включает в себя следующие шаги:
- Корпоративный пользователь проходит аутентификацию через своего поставщика удостоверений, подключается к своему корпоративному порталу и открывает ссылку Studio с корпоративного портала.
- Приложение корпоративного портала выполняет частный вызов API, используя конечную точку VPC шлюза API, чтобы создать предварительно подписанный URL-адрес.
- Вызов конечной точки VPC шлюза API «создать предварительно подписанный URL» перенаправляется на преобразователь входящего трафика Route 53 в VPC клиента, как настроено в корпоративной DNS.
- Преобразователь DNS VPC разрешает его в IP-адрес конечной точки VPC шлюза API. При желании он ищет запись частной размещенной зоны, если она существует.
- Конечная точка API Gateway VPC направляет запрос через частную сеть Amazon на «create presigned URL API», запущенный в сервисной учетной записи API Gateway.
- Шлюз API вызывает
create-pre-signedURL
частный API и проксирует запрос наcreate-pre-signedURL
AWS Lambda функции. - Ассоциация
create-pre-signedURL
Вызов Lambda вызывается через конечную точку Lambda VPC. - Ассоциация
create-pre-signedURL
функция запускается в учетной записи службы, извлекает контекст аутентифицированного пользователя (идентификатор пользователя, регион и т. д.), ищет таблицу сопоставления для идентификации домена SageMaker и идентификатора профиля пользователя, создаетsagemaker createpre-signedDomainURL
вызов API и генерирует предварительно подписанный URL-адрес. Роль службы Lambda имеет исходные условия конечной точки VPC, определенные для SageMaker API и Studio. - Созданный предварительно подписанный URL разрешается через конечную точку Studio VPC.
- Studio проверяет, что доступ к предварительно подписанному URL-адресу осуществляется через конечную точку VPC клиента, определенную в политике, и возвращает результат.
- Записная книжка Studio возвращается в сеанс браузера пользователя по корпоративной сети, минуя Интернет.
В следующих разделах показано, как реализовать эту архитектуру для разрешения URL-адресов, предварительно подписанных Studio, из корпоративной сети с использованием конечных точек VPC. Мы демонстрируем полную реализацию, показывая следующие шаги:
- Установите базовую архитектуру.
- Настройте корпоративный сервер приложений для доступа к предварительно подписанному URL-адресу SageMaker через конечную точку VPC.
- Настройте и запустите Studio из корпоративной сети.
Установите базовую архитектуру
В сообщении Доступ к записной книжке Amazon SageMaker Studio из корпоративной сети, мы продемонстрировали, как разрешить предварительно подписанное доменное имя URL-адреса для ноутбука Studio из корпоративной сети, не выходя в Интернет. Вы можете следовать инструкциям в этом сообщении, чтобы настроить базовую архитектуру, а затем вернуться к этому сообщению и перейти к следующему шагу.
Настройте корпоративный сервер приложений для доступа к предварительно подписанному URL-адресу SageMaker через конечную точку VPC.
Чтобы обеспечить доступ к Studio из вашего интернет-браузера, мы настроили локальный сервер приложений на Windows Server в локальной общедоступной подсети VPC. Однако запросы DNS для доступа к Studio направляются через корпоративную (частную) сеть. Выполните следующие шаги, чтобы настроить маршрутизацию трафика Studio через корпоративную сеть:
- Подключитесь к локальному серверу приложений Windows.
- Выберите Получить пароль затем просмотрите и загрузите свой закрытый ключ, чтобы расшифровать свой пароль.
- Используйте RDP-клиент и подключитесь к Windows Server, используя свои учетные данные.
Разрешение Studio DNS из командной строки Windows Server приводит к использованию общедоступных DNS-серверов, как показано на следующем снимке экрана.
Теперь мы обновляем Windows Server, чтобы использовать локальный DNS-сервер, который мы настроили ранее. - Перейдите в Панель управления, Сеть и Интернет, и выберите Сетевые подключения.
- Щелкните правой кнопкой мыши Ethernet и выберите Объекты меню.
- Обновите Windows Server, чтобы использовать локальный DNS-сервер.
- Теперь вы обновляете предпочитаемый DNS-сервер с IP-адресом вашего DNS-сервера.
- Перейдите в VPC и Таблицы маршрутов и выберите свой СТУДИЯ-ОНПРЕМ-ПУБЛИК-РТ маршрутная таблица.
- Добавьте маршрут к 10.16.0.0/16 с целью в качестве пирингового соединения, которое мы создали во время настройки базовой архитектуры.
Настройте и запустите Studio из вашей корпоративной сети
Чтобы настроить и запустить Studio, выполните следующие действия:
- Загрузите Chrome и запустите браузер на этом экземпляре Windows.
Вам может понадобиться отключить конфигурацию усиленной безопасности Internet Explorer чтобы разрешить загрузку файлов, а затем включить загрузку файлов. - В браузере Chrome на локальном устройстве перейдите к консоли SageMaker и откройте инструменты разработчика Chrome. Cеть меню.
- Запустите приложение Studio и наблюдайте за Cеть вкладка для
authtoken
значение параметра, которое включает в себя сгенерированный предварительно подписанный URL-адрес вместе с адресом удаленного сервера, на который URL-адрес перенаправляется для разрешения.name d-h4cy01pxticj.studio.us-west-2.sagemaker.aws
. - Повторите эти шаги с Эластичное вычислительное облако Amazon (Amazon EC2) Экземпляр Windows, который вы настроили как часть базовой архитектуры.
Мы можем заметить, что удаленный адрес не является общедоступным IP-адресом DNS, а является конечной точкой Studio VPC 10.16.42.74.
Заключение
В этом посте мы продемонстрировали, как разрешить предварительно подписанный URL-адрес Studio из корпоративной сети, используя частные конечные точки Amazon VPC, не раскрывая предварительно подписанный URL-адрес в Интернете. Это дополнительно повышает уровень безопасности вашего предприятия при доступе к Studio из корпоративной сети для создания высокозащищенных рабочих нагрузок машинного обучения в SageMaker. В часть 2 этой серии мы расширяем это решение, чтобы продемонстрировать, как создать частный API для доступа к Studio с помощью aws:sourceVPCE
Проверка политики IAM и аутентификация токена. Попробуйте это решение и оставьте свой отзыв в комментариях!
Об авторах
Рам Виттал является архитектором решений для машинного обучения в AWS. Он имеет более чем 20-летний опыт проектирования и создания распределенных, гибридных и облачных приложений. Он увлечен созданием безопасных и масштабируемых решений AI/ML и больших данных, чтобы помочь корпоративным клиентам в их переходе на облачные технологии и их оптимизации для улучшения их бизнес-результатов. В свободное время увлекается теннисом и фотографией.
Нилам Кошия является архитектором корпоративных решений в AWS. В настоящее время она сосредоточена на том, чтобы помочь корпоративным клиентам в принятии ими облачных решений для достижения стратегических результатов в бизнесе. В свободное время она любит читать и гулять на свежем воздухе.