Puede acceder a los cuadernos de Amazon SageMaker Studio desde la consola de Amazon SageMaker a través de la federación autenticada de AWS Identity and Access Management (IAM) desde su proveedor de identidad (IdP) como Okta. Cuando un usuario de Studio abre el enlace del cuaderno, Studio valida la política de IAM del usuario conectado para autorizar el acceso y genera y resuelve la URL prefirmada para el usuario. Debido a que la consola de SageMaker se ejecuta en un dominio de Internet, esta URL prefirmada generada es visible en la sesión del navegador. Esto plantea un vector de amenaza no deseado para la exfiltración y el acceso a los datos de los clientes si no se aplican los controles de acceso adecuados.
Studio admite algunos métodos para hacer cumplir los controles de acceso contra la exfiltración de datos de URL prefirmados:
- Validación de la IP del cliente mediante la condición de la política de IAM
aws:sourceIp
- Validación de VPC de cliente con la condición de IAM
aws:sourceVpc
- Validación del punto de enlace de la VPC del cliente mediante la condición de la política de IAM
aws:sourceVpce
Al acceder a los portátiles de Studio desde la consola de SageMaker, la única opción disponible es utilizar la validación de IP del cliente con la condición de política de IAM. aws:sourceIp
. Sin embargo, puede usar productos de enrutamiento de tráfico del navegador como Zscaler para garantizar la escalabilidad y el cumplimiento del acceso a Internet de sus empleados. Estos productos de enrutamiento de tráfico generan su propia IP de origen cuyo rango de IP no está controlado por el cliente empresarial. Esto hace que sea imposible para estos clientes empresariales utilizar el aws:sourceIp
Condición.
Cómo usar la validación del punto de enlace de la VPC de cliente mediante la condición de la política de IAM aws:sourceVpce
, la creación de una URL prefirmada debe provenir de la misma VPC del cliente donde se implementa Studio, y la resolución de la URL prefirmada debe realizarse a través de un punto de enlace de la VPC de Studio en la VPC del cliente. Esta resolución de la URL prefirmada durante el tiempo de acceso para los usuarios de la red corporativa se puede realizar mediante las reglas de reenvío de DNS (tanto en Zscaler como en el DNS corporativo) y luego mediante una resolución de entrada de Amazon Route 53 en el punto de enlace de la VPC del cliente.
En esta parte, analizamos la arquitectura general para proteger las URL prefirmadas de Studio y mostramos cómo configurar la infraestructura básica para crear y lanzar una URL prefirmada de Studio desde su punto de enlace de la VPC a través de una red privada sin atravesar Internet. Esto sirve como una capa fundamental para evitar la filtración de datos por parte de atacantes externos que obtienen acceso a la URL prefirmada de Studio y el acceso no autorizado o falsificado por parte de usuarios empresariales dentro de un entorno empresarial.
descripción general de la solución
El siguiente diagrama ilustra la arquitectura general de la solución.
El proceso incluye los siguientes pasos:
- Un usuario corporativo se autentica a través de su IdP, se conecta a su portal corporativo y abre el enlace de Studio desde el portal corporativo.
- La aplicación Portal de empresa realiza una llamada de API privada mediante un punto de enlace de la VPC de API Gateway para crear una dirección URL prefirmada.
- La llamada de punto de enlace de la VPC de API Gateway Crear URL prefirmada se reenvía a la resolución de Route 53 de entrada en la VPC del cliente según lo configurado en el DNS corporativo.
- El solucionador de DNS de la VPC lo resuelve en la IP del punto de enlace de la VPC de la puerta de enlace de la API. Opcionalmente, busca una entrada de zona alojada privada, si la hay.
- El punto de enlace de la VPC de API Gateway enruta la solicitud a través de la red privada de Amazon a la API Crear URL prefirmada que se ejecuta en la cuenta de servicio de API Gateway.
- API Gateway llama al
create-pre-signedURL
API privada y reenvía la solicitud a lacreate-pre-signedURL
Función AWS Lambda. - Que
create-pre-signedURL
La invocación de Lambda se invoca a través del punto de enlace de la VPC de Lambda. - Que
create-pre-signedURL
La función se ejecuta en la cuenta de servicio, recupera el contexto del usuario autenticado (ID de usuario, región, etc.), busca una tabla de asignación para identificar el dominio de SageMaker y el identificador de perfil de usuario, crea unsagemaker createpre-signedDomainURL
llama a la API y genera una URL prefirmada. El rol de servicio de Lambda tiene las condiciones del punto de enlace de la VPC de origen definidas para SageMaker API y Studio. - La URL prefirmada generada se resuelve a través del punto final de la VPC de Studio.
- Studio valida que se acceda a la URL prefirmada desde el punto de enlace de la VPC del cliente definido en la política y devuelve el resultado.
- El portátil Studio vuelve a la sesión del navegador del usuario a través de la red corporativa sin atravesar Internet.
Las siguientes secciones lo guiarán a través de la implementación de esta arquitectura para resolver las URL prefirmadas de Studio desde una red corporativa mediante puntos de conexión de la VPC. Demostramos una implementación completa mostrando los siguientes pasos:
- Configurar la arquitectura básica.
- Configure el servidor de aplicaciones empresariales para acceder a una URL prefirmada de SageMaker a través de un punto de enlace de la VPC.
- Configure e inicie Studio a través de la red corporativa.
Configurar la arquitectura básica
En el artículo Acceso a una computadora portátil Amazon SageMaker Studio desde una red corporativa, mostramos cómo resolver un nombre de dominio de URL prefirmado para una computadora portátil Studio desde una red corporativa sin atravesar Internet. Puede seguir las instrucciones de esta publicación para configurar la arquitectura básica y luego volver a esta publicación y continuar con el siguiente paso.
Configurar el servidor de aplicaciones empresariales para acceder a una URL prefirmada de SageMaker a través de un punto de enlace de la VPC
Para habilitar el acceso a Studio desde su navegador de Internet, configuramos un servidor de aplicaciones local en Windows Server en la subred pública de la VPC local. Sin embargo, las consultas de DNS para acceder a Studio se enrutan a través de la red corporativa (privada). Para configurar el enrutamiento del tráfico de Studio a través de la red corporativa, complete los siguientes pasos:
- Conéctese a su servidor local de aplicaciones de Windows.
- Elegir obtener la contraseña Luego navegue y cargue su clave privada para descifrar su contraseña.
- Utilice un cliente RDP y conéctese al servidor de Windows con sus credenciales.
La resolución de Studio DNS desde el símbolo del sistema de Windows Server da como resultado el uso de servidores DNS públicos, como se muestra en la siguiente captura de pantalla.
Ahora actualicemos Windows Server para usar el servidor DNS local que configuramos anteriormente. - Navegar a Tablero de conmutadores, Redes e Internety elige conexiones de red.
- botón derecho del ratón ethernet y elige el Características Pestaña.
- Actualice Windows Server para usar el servidor DNS local.
- Ahora actualice su servidor DNS preferido con la IP de su servidor DNS.
- Navegar a VPC y tablas de rutas y elige el tuyo STUDIO-ONPREM-PÚBLICO-RT tabla de rutas
- Agregue una ruta a 10.16.0.0/16 con el destino como una conexión de emparejamiento que creamos durante la configuración de la arquitectura básica.
Configure e inicie Studio en su red corporativa
Siga estos pasos para configurar e iniciar Studio:
- Descarga Chrome e inicia el navegador en esta instancia de Windows.
Es posible que deba deshabilitar la Configuración de seguridad mejorada de Internet Explorer para permitir la descarga de archivos y luego habilitar las descargas de archivos. - En el navegador Chrome de su dispositivo local, vaya a la consola de SageMaker y abra las herramientas para desarrolladores de Chrome. la red Pestaña.
- Inicie la aplicación Studio y mire el la red ficha para el
authtoken
Valor del parámetro que contiene la URL prefirmada generada junto con la dirección del servidor remoto al que se reenviará la URL para su resolución. En este ejemplo, la dirección remota 100.21.12.108 es una de las direcciones del servidor DNS público para resolver el dominio DNS de SageMaker.name d-h4cy01pxticj.studio.us-west-2.sagemaker.aws
. - Repita estos pasos desde la instancia de Windows de Amazon Elastic Compute Cloud (Amazon EC2) que configuró como parte de la arquitectura base.
Podemos observar que la dirección remota no es la IP del DNS público, es el punto final de la VPC de Studio 10.16.42.74.
Conclusión
En esta publicación, mostramos cómo resolver una URL de Studio prefirmada desde una red corporativa utilizando puntos finales privados de Amazon VPC sin exponer la resolución de URL prefirmada a Internet. Esto asegura aún más la postura de seguridad de su organización para acceder a Studio desde una red corporativa para crear cargas de trabajo de aprendizaje automático altamente seguras en SageMaker. En la Parte 2 de esta serie, ampliamos esta solución para mostrar cómo crear una API privada para acceder a Studio aws:sourceVPCE
Validación de políticas de IAM y autenticación de tokens. ¡Pruebe esta solución y deje sus comentarios en los comentarios!
Sobre los autores
Aries Vital es arquitecto de soluciones de aprendizaje automático en AWS. Tiene más de 20 años de experiencia en el diseño y la creación de aplicaciones distribuidas, híbridas y en la nube. Le apasiona crear soluciones seguras y escalables de AI/ML y Big Data para ayudar a los clientes empresariales con su adopción y optimización de la nube y mejorar sus resultados comerciales. En su tiempo libre le gusta jugar tenis y tomar fotografías.
neelam koshiya es arquitecto de soluciones empresariales en AWS. Su enfoque actual es ayudar a los clientes empresariales en su viaje de adopción de la nube para lograr resultados comerciales estratégicos. En su tiempo libre, le gusta leer y estar en la naturaleza.