Connectez-vous à Amazon SageMaker Studio et Studio Classic via un point de terminaison VPC d'interface - Amazon SageMaker AI

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Connectez-vous à Amazon SageMaker Studio et Studio Classic via un point de terminaison VPC d'interface

Vous pouvez vous connecter à Amazon SageMaker Studio et à Amazon SageMaker Studio Classic depuis votre Amazon Virtual Private Cloud (Amazon VPC) via un point de terminaison d'interface dans votre VPC au lieu de vous connecter via Internet. Lorsque vous utilisez un point de terminaison VPC d'interface (point de terminaison d'interface), la communication entre votre VPC et Studio ou Studio Classic s'effectue de manière entièrement et sécurisée au sein du réseau. AWS

Studio et Studio Classic prennent en charge les points de terminaison d'interface alimentés par AWS PrivateLink. Chaque point de terminaison d'interface est représenté par une ou plusieurs interfaces réseau Elastic avec des adresses IP privées dans vos sous-réseaux VPC.

Studio et Studio Classic prennent en charge les points de terminaison d'interface dans toutes les AWS régions où Amazon SageMaker AI et Amazon VPC sont disponibles.

Création d'un point de terminaison de VPC

Vous pouvez créer un point de terminaison d'interface pour vous connecter à Studio ou à Studio Classic à l'aide de la AWS console ou du AWS Command Line Interface (AWS CLI). Pour obtenir des instructions, veuillez consulter Création d'un point de terminaison d'interface. Assurez-vous de créer des points de terminaison d'interface pour tous les sous-réseaux de votre VPC à partir desquels vous souhaitez vous connecter à Studio et à Studio Classic.

Lorsque vous créez un point de terminaison d'interface, assurez-vous que les groupes de sécurité de votre point de terminaison autorisent l'accès entrant au trafic HTTPS en provenance des groupes de sécurité associés à Studio et Studio Classic. Pour plus d'informations, veuillez consulter Contrôler l'accès aux services avec les points de terminaison d'un VPC.

Note

Outre la création d'un point de terminaison d'interface pour se connecter à Studio et à Studio Classic, créez un point de terminaison d'interface pour vous connecter à l' SageMaker API Amazon. Lorsque les utilisateurs appellent CreatePresignedDomainUrlpour obtenir l'URL de connexion à Studio et Studio Classic, cet appel passe par le point de terminaison de l'interface utilisé pour se connecter à l' SageMaker API.

Lorsque vous créez le point de terminaison de l'interface, spécifiez-le aws.sagemaker.Region.studio comme nom de service pour Studio ou Studio Classic. Une fois que vous avez créé un point de terminaison d'un VPC, activez le DNS privé pour votre point de terminaison. Lorsque vous vous connectez à Studio ou à Studio Classic depuis le VPC à l'aide de l' SageMaker API, de la console ou de la console AWS CLI, vous vous connectez via le point de terminaison de l'interface plutôt que via Internet public. Vous devez également configurer un DNS personnalisé avec des zones hébergées privées pour le point de terminaison Amazon VPC afin que Studio ou Studio Classic puissent accéder à l' SageMaker API à l'aide du point de api.sagemaker.$region.amazonaws.com terminaison plutôt qu'à l'aide de l'URL du point de terminaison du VPC. Pour plus d'informations sur la configuration d'une zone hébergée privée, veuillez consulter Utilisation des zones hébergées privées.

Vous pouvez associer une politique de point de terminaison Amazon VPC aux points de terminaison VPC d'interface que vous utilisez pour vous connecter à Studio ou à Studio Classic. La politique relative aux terminaux contrôle l'accès à Studio ou à Studio Classic. Vous pouvez spécifier les valeurs suivantes :

  • Le principal qui peut exécuter des actions.

  • Les actions qui peuvent être effectuées.

  • Les ressources sur lesquelles les actions peuvent être exécutées.

Pour utiliser un point de terminaison VPC avec Studio ou Studio Classic, votre politique de point de terminaison doit autoriser l'CreateAppopération sur le type d' KernelGateway application. Cela permet au trafic acheminé vers via le point de terminaison d'un VPC d'appeler l'API CreateApp. L'exemple de politique de point de terminaison d'un VPC suivante montre comment autoriser l'opération CreateApp.

{ "Statement": [ { "Action": "sagemaker:CreateApp", "Effect": "Allow", "Resource": "arn:aws:sagemaker:us-west-2:acct-id:app/domain-id/*", "Principal": "*" } ] }

Pour plus d'informations, veuillez consulter Contrôler l'accès aux services avec les points de terminaison d'un VPC.

L'exemple suivant de politique de point de terminaison VPC indique que tous les utilisateurs ayant accès au point de terminaison sont autorisés à accéder aux profils utilisateur du domaine SageMaker AI avec l'ID de domaine spécifié. L'accès aux autres domaines est refusé.

{ "Statement": [ { "Action": "sagemaker:CreatePresignedDomainUrl", "Effect": "Allow", "Resource": "arn:aws:sagemaker:us-west-2:acct-id:user-profile/domain-id/*", "Principal": "*" } ] }

Les utilisateurs extérieurs à votre VPC peuvent se connecter à Studio ou à Studio Classic via Internet, même si vous avez configuré un point de terminaison d'interface dans votre VPC.

Pour autoriser l'accès aux seules connexions effectuées depuis votre VPC, créez une politique AWS Identity and Access Management (IAM) à cet effet. Ajoutez cette politique à chaque utilisateur, groupe ou rôle utilisé pour accéder à Studio ou Studio Classic. Cette fonctionnalité n'est prise en charge que lors de l'utilisation du mode IAM pour l'authentification et n'est pas prise en charge en mode IAM Identity Center. Les exemples suivants montrent comment créer de telles politiques.

Important

Si vous appliquez une politique IAM similaire à l'un des exemples suivants, les utilisateurs ne peuvent pas accéder à Studio ou à Studio Classic ou à celle spécifiée SageMaker APIs via la console SageMaker AI. Pour accéder à Studio ou Studio Classic, les utilisateurs doivent utiliser une URL présignée ou appeler SageMaker APIs directement le.

Exemple 1 : Autoriser les connexions uniquement dans le sous-réseau d'un point de terminaison d'interface

La politique suivante autorise les connexions uniquement pour les appelants dans le sous-réseau où vous avez créé le point de terminaison d'interface.

{ "Id": "sagemaker-studio-example-1", "Version": "2012-10-17", "Statement": [ { "Sid": "Enable SageMaker Studio Access", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedDomainUrl", "sagemaker:DescribeUserProfile" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceVpc": "vpc-111bbaaa" } } } ] }

Exemple 2 : Autoriser les connexions uniquement via les points de terminaison d'interface en utilisant aws:sourceVpce

La politique suivante n'autorise les connexions qu'à celles effectuées via les points de terminaison d'interface spécifiés par la clé de condition aws:sourceVpce. Par exemple, le point de terminaison de la première interface pourrait autoriser l'accès via la console SageMaker AI. Le deuxième point de terminaison de l'interface pourrait autoriser l'accès via l' SageMaker API.

{ "Id": "sagemaker-studio-example-2", "Version": "2012-10-17", "Statement": [ { "Sid": "Enable SageMaker Studio Access", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedDomainUrl", "sagemaker:DescribeUserProfile" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:sourceVpce": [ "vpce-111bbccc", "vpce-111bbddd" ] } } } ] }

Cette politique inclut l'action DescribeUserProfile. Généralement, vous appelez DescribeUserProfile pour vérifier que l'état du profil utilisateur est InService avant d'essayer de vous connecter au domaine. Par exemple :

aws sagemaker describe-user-profile \ --domain-id domain-id \ --user-profile-name profile-name

Réponse :

{ "DomainId": "domain-id", "UserProfileArn": "arn:aws:sagemaker:us-west-2:acct-id:user-profile/domain-id/profile-name", "UserProfileName": "profile-name", "HomeEfsFileSystemUid": "200001", "Status": "InService", "LastModifiedTime": 1605418785.555, "CreationTime": 1605418477.297 }
aws sagemaker create-presigned-domain-url --domain-id domain-id \ --user-profile-name profile-name

Réponse :

{ "AuthorizedUrl": "https://domain-id.studio.us-west-2.sagemaker.aws/auth?token=AuthToken" }

Pour ces deux appels, si vous utilisez une version du AWS SDK publiée avant le 13 août 2018, vous devez spécifier l'URL du point de terminaison dans l'appel. Par exemple, l'exemple suivant illustre un appel à create-presigned-domain-url :

aws sagemaker create-presigned-domain-url --domain-id domain-id \ --user-profile-name profile-name \ --endpoint-url vpc-endpoint-id.api.sagemaker.Region.vpce.amazonaws.com

Exemple 3 : Autoriser les connexions à partir d'adresses IP en utilisant aws:SourceIp

La politique suivante autorise les connexions uniquement à partir de la plage d'adresses IP spécifiée à l'aide de la clé de condition aws:SourceIp.

{ "Id": "sagemaker-studio-example-3", "Version": "2012-10-17", "Statement": [ { "Sid": "Enable SageMaker Studio Access", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedDomainUrl", "sagemaker:DescribeUserProfile" ], "Resource": "*", "Condition": { "IpAddress": { "aws:SourceIp": [ "192.0.2.0/24", "203.0.113.0/24" ] } } } ] }

Exemple 4 : Autoriser les connexions à partir d'adresses IP via un point de terminaison d'interface en utilisant aws:VpcSourceIp

Si vous accédez à Studio ou Studio Classic via un point de terminaison d'interface, vous pouvez utiliser la clé de aws:VpcSourceIp condition pour autoriser les connexions uniquement à partir de la plage d'adresses IP spécifiée au sein du sous-réseau où vous avez créé le point de terminaison d'interface, comme indiqué dans la politique suivante :

{ "Id": "sagemaker-studio-example-4", "Version": "2012-10-17", "Statement": [ { "Sid": "Enable SageMaker Studio Access", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedDomainUrl", "sagemaker:DescribeUserProfile" ], "Resource": "*", "Condition": { "IpAddress": { "aws:VpcSourceIp": [ "192.0.2.0/24", "203.0.113.0/24" ] }, "StringEquals": { "aws:SourceVpc": "vpc-111bbaaa" } } } ] }