Логотип Зефирнет

Безопасные предварительно подписанные URL-адреса Amazon SageMaker Studio. Часть 1. Основополагающая инфраструктура

Дата:

Вы можете получить доступ Студия 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, а также несанкционированного или поддельного доступа корпоративных пользователей в корпоративной среде.

Обзор решения

На следующей диаграмме показана всеобъемлющая архитектура решения.

Процесс включает в себя следующие шаги:

  1. Корпоративный пользователь проходит аутентификацию через своего поставщика удостоверений, подключается к своему корпоративному порталу и открывает ссылку Studio с корпоративного портала.
  2. Приложение корпоративного портала выполняет частный вызов API, используя конечную точку VPC шлюза API, чтобы создать предварительно подписанный URL-адрес.
  3. Вызов конечной точки VPC шлюза API «создать предварительно подписанный URL» перенаправляется на преобразователь входящего трафика Route 53 в VPC клиента, как настроено в корпоративной DNS.
  4. Преобразователь DNS VPC разрешает его в IP-адрес конечной точки VPC шлюза API. При желании он ищет запись частной размещенной зоны, если она существует.
  5. Конечная точка API Gateway VPC направляет запрос через частную сеть Amazon на «create presigned URL API», запущенный в сервисной учетной записи API Gateway.
  6. Шлюз API вызывает create-pre-signedURL частный API и проксирует запрос на create-pre-signedURL AWS Lambda функции.
  7. Ассоциация create-pre-signedURL Вызов Lambda вызывается через конечную точку Lambda VPC.
  8. Ассоциация create-pre-signedURL функция запускается в учетной записи службы, извлекает контекст аутентифицированного пользователя (идентификатор пользователя, регион и т. д.), ищет таблицу сопоставления для идентификации домена SageMaker и идентификатора профиля пользователя, создает sagemaker createpre-signedDomainURL вызов API и генерирует предварительно подписанный URL-адрес. Роль службы Lambda имеет исходные условия конечной точки VPC, определенные для SageMaker API и Studio.
  9. Созданный предварительно подписанный URL разрешается через конечную точку Studio VPC.
  10. Studio проверяет, что доступ к предварительно подписанному URL-адресу осуществляется через конечную точку VPC клиента, определенную в политике, и возвращает результат.
  11. Записная книжка Studio возвращается в сеанс браузера пользователя по корпоративной сети, минуя Интернет.

В следующих разделах показано, как реализовать эту архитектуру для разрешения URL-адресов, предварительно подписанных Studio, из корпоративной сети с использованием конечных точек VPC. Мы демонстрируем полную реализацию, показывая следующие шаги:

  1. Установите базовую архитектуру.
  2. Настройте корпоративный сервер приложений для доступа к предварительно подписанному URL-адресу SageMaker через конечную точку VPC.
  3. Настройте и запустите Studio из корпоративной сети.

Установите базовую архитектуру

В сообщении Доступ к записной книжке Amazon SageMaker Studio из корпоративной сети, мы продемонстрировали, как разрешить предварительно подписанное доменное имя URL-адреса для ноутбука Studio из корпоративной сети, не выходя в Интернет. Вы можете следовать инструкциям в этом сообщении, чтобы настроить базовую архитектуру, а затем вернуться к этому сообщению и перейти к следующему шагу.

Настройте корпоративный сервер приложений для доступа к предварительно подписанному URL-адресу SageMaker через конечную точку VPC.

Чтобы обеспечить доступ к Studio из вашего интернет-браузера, мы настроили локальный сервер приложений на Windows Server в локальной общедоступной подсети VPC. Однако запросы DNS для доступа к Studio направляются через корпоративную (частную) сеть. Выполните следующие шаги, чтобы настроить маршрутизацию трафика Studio через корпоративную сеть:

  1. Подключитесь к локальному серверу приложений Windows.

  2. Выберите Получить пароль затем просмотрите и загрузите свой закрытый ключ, чтобы расшифровать свой пароль.
  3. Используйте RDP-клиент и подключитесь к Windows Server, используя свои учетные данные.
    Разрешение Studio DNS из командной строки Windows Server приводит к использованию общедоступных DNS-серверов, как показано на следующем снимке экрана.

    Теперь мы обновляем Windows Server, чтобы использовать локальный DNS-сервер, который мы настроили ранее.
  4. Перейдите в Панель управления, Сеть и Интернет, и выберите Сетевые подключения.
  5. Щелкните правой кнопкой мыши Ethernet и выберите Объекты меню.
  6. Обновите Windows Server, чтобы использовать локальный DNS-сервер.
  7. Теперь вы обновляете предпочитаемый DNS-сервер с IP-адресом вашего DNS-сервера.
  8. Перейдите в VPC и Таблицы маршрутов и выберите свой СТУДИЯ-ОНПРЕМ-ПУБЛИК-РТ маршрутная таблица.
  9. Добавьте маршрут к 10.16.0.0/16 с целью в качестве пирингового соединения, которое мы создали во время настройки базовой архитектуры.

Настройте и запустите Studio из вашей корпоративной сети

Чтобы настроить и запустить Studio, выполните следующие действия:

  1. Загрузите Chrome и запустите браузер на этом экземпляре Windows.
    Вам может понадобиться отключить конфигурацию усиленной безопасности Internet Explorer чтобы разрешить загрузку файлов, а затем включить загрузку файлов.
  2. В браузере Chrome на локальном устройстве перейдите к консоли SageMaker и откройте инструменты разработчика Chrome. Cеть меню.
  3. Запустите приложение Studio и наблюдайте за Cеть вкладка для authtoken значение параметра, которое включает в себя сгенерированный предварительно подписанный URL-адрес вместе с адресом удаленного сервера, на который URL-адрес перенаправляется для разрешения. name d-h4cy01pxticj.studio.us-west-2.sagemaker.aws.
  4. Повторите эти шаги с Эластичное вычислительное облако 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. В настоящее время она сосредоточена на том, чтобы помочь корпоративным клиентам в принятии ими облачных решений для достижения стратегических результатов в бизнесе. В свободное время она любит читать и гулять на свежем воздухе.

Spot_img

Последняя разведка

Spot_img