Contrôle d’accès avancé
Amazon SageMaker AI prend en charge le contrôle d’accès par attributs (ABAC) afin d’implémenter un contrôle d’accès précis pour les connexions Visual Studio Code distantes à l’aide de politiques ABAC. Voici des exemples de politiques ABAC pour les connexions VS Code distantes.
Application de l’accès à distance
Contrôlez l’accès aux ressources à l’aide de la clé de condition sagemaker:RemoteAccess. Celle-ci est prise en charge par les API CreateSpace et UpdateSpace. L’exemple suivant utilise CreateSpace.
Vous pouvez vous assurer que les utilisateurs ne peuvent pas créer d’espaces avec l’accès à distance activé. Cela permet de maintenir la sécurité en utilisant par défaut des paramètres d’accès plus restreints. La politique suivante garantit aux utilisateurs qu’ils pourront :
-
créer de nouveaux espaces Studio où l’accès à distance est explicitement désactivé ;
-
créer de nouveaux espaces Studio sans spécifier de paramètres d’accès à distance.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyCreateSpaceRemoteAccessEnabled", "Effect": "Deny", "Action": "sagemaker:CreateSpace", "Resource": "arn:aws:sagemaker:*:*:space/*", "Condition": { "StringEquals": { "sagemaker:RemoteAccess": [ "ENABLED" ] } } }, { "Sid": "AllowCreateSpace", "Effect": "Allow", "Action": "sagemaker:CreateSpace", "Resource": "arn:aws:sagemaker:*:*:space/*" } ] }
Contrôle d’accès basé sur les étiquettes
Mettez en œuvre un contrôle d’accès basé sur des balises pour restreindre les connexions en fonction des balises de ressource et de principal.
Vous pouvez vous assurer que les utilisateurs ne peuvent accéder qu’aux ressources appropriées pour leur rôle et pour leurs attributions de projet. Vous pouvez utiliser la politique suivante pour :
-
autoriser les utilisateurs à se connecter uniquement aux espaces correspondant à l’équipe, à l’environnement et au centre de coûts qui leur ont été assignés ;
-
mettre en œuvre un contrôle d’accès précis en fonction de la structure organisationnelle.
Avertissement
La politique de contrôle d’accès basée sur des balises présentée dans l’exemple suivant est fournie à titre indicatif uniquement. Vous ne devez pas utiliser "Resource": "*" dans un environnement de production. L’utilisation de définitions de ressources trop permissives pourrait rendre possible un accès non autorisé involontaire. Vous devez toujours limiter l’étendue des ressources dans vos politiques IAM afin de suivre les bonnes pratiques.
Dans l’exemple suivant, l’espace est balisé comme suit :
{ "Team": "ML", "Environment": "Production", "CostCenter": "12345" }
Vous pouvez avoir un rôle contenant la politique suivante pour mettre en correspondance les balises de ressource et de principal :
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor", "Effect": "Allow", "Action": [ "sagemaker:StartSession" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/Team": "${aws:PrincipalTag/Team}", "aws:ResourceTag/Environment": "${aws:PrincipalTag/Environment}", "aws:ResourceTag/CostCenter": "${aws:PrincipalTag/CostCenter}" } } } ] }
Lorsque les balises du rôle correspondent, l’utilisateur est autorisé à démarrer la session et à se connecter à distance à son espace. Consultez Contrôle de l’accès aux ressources AWS à l’aide de balises pour plus d’informations.