

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.

# Isolement des ressources de domaine
<a name="domain-resource-isolation"></a>

**Important**  
Les politiques IAM personnalisées qui permettent à Amazon SageMaker Studio ou Amazon SageMaker Studio Classic de créer des SageMaker ressources Amazon doivent également accorder des autorisations pour ajouter des balises à ces ressources. L’autorisation d’ajouter des balises aux ressources est requise, car Studio et Studio Classic balisent automatiquement toutes les ressources qu’ils créent. Si une politique IAM autorise Studio et Studio Classic à créer des ressources mais n'autorise pas le balisage, des erreurs « AccessDenied » peuvent se produire lors de la tentative de création de ressources. Pour de plus amples informations, veuillez consulter [Fournir des autorisations pour le balisage des ressources d' SageMaker IA](security_iam_id-based-policy-examples.md#grant-tagging-permissions).  
[AWS politiques gérées pour Amazon SageMaker AI](security-iam-awsmanpol.md)qui donnent des autorisations pour créer des SageMaker ressources incluent déjà des autorisations pour ajouter des balises lors de la création de ces ressources.

Vous pouvez isoler les ressources entre chacun des domaines de votre compte à Région AWS l'aide d'une politique Gestion des identités et des accès AWS (IAM). Les ressources isolées ne seront plus accessibles depuis d’autres domaines. Dans cette rubrique, nous aborderons les conditions requises pour la politique IAM et la manière de les appliquer.

Les ressources qui peuvent être isolées par cette politique sont les types de ressources dont les clés de condition contiennent `aws:ResourceTag/${TagKey}` ou `sagemaker:ResourceTag/${TagKey}`. Pour une référence sur les ressources d' SageMaker IA et les clés de condition associées, consultez [Actions, ressources et clés de condition pour Amazon SageMaker AI](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsagemaker.html).

**Avertissement**  
Les types de ressources qui *ne contiennent pas* les clés de condition ci-dessus (et donc les [actions](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsagemaker.html#amazonsagemaker-actions-as-permissions) qui utilisent les types de ressources) *ne sont pas* affectés par cette politique d’isolement des ressources. Par exemple, le type de ressource [pipeline-execution](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsagemaker.html#amazonsagemaker-pipeline-execution) *ne contient pas* les clés de condition ci-dessus et *n’est pas* affecté par cette politique. Par conséquent, les quelques actions suivantes, avec le type de ressource pipeline-execution, *ne sont pas* prises en charge pour l’isolement des ressources :  
DescribePipelineExecution
StopPipelineExecution
UpdatePipelineExecution
RetryPipelineExecution
DescribePipelineDefinitionForExecution
ListPipelineExecutionSteps
SendPipelineExecutionStepSuccess
SendPipelineExecutionStepFailure

La rubrique suivante explique comment créer une nouvelle politique IAM qui limite l’accès aux ressources du domaine aux profils utilisateur dotés de la balise de domaine, et comment attacher cette politique au rôle d’exécution IAM du domaine. Vous devez répéter ce processus pour chaque domaine de votre compte. Pour plus d’informations sur les balises de domaine et le remplissage de ces balises, consultez [Présentation de plusieurs domaines](domain-multiple.md).

## Console
<a name="domain-resource-isolation-console"></a>

La section suivante explique comment créer une nouvelle politique IAM qui limite l'accès aux ressources du domaine aux profils utilisateur dotés de la balise de domaine, ainsi que comment associer cette politique au rôle d'exécution IAM du domaine, à partir de la console Amazon SageMaker AI. 

**Note**  
Cette politique ne fonctionne que dans les domaines qui utilisent Amazon SageMaker Studio Classic comme expérience par défaut.

1. Créez une politique IAM nommée `StudioDomainResourceIsolationPolicy-domain-id` à l’aide du document de politique JSON ci-dessous en suivant les étapes décrites dans [Création de politiques de rôle IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html). 

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "CreateAPIs",
               "Effect": "Allow",
               "Action": "sagemaker:Create*",
               "NotResource": [
                   "arn:aws:sagemaker:*:*:domain/*",
                   "arn:aws:sagemaker:*:*:user-profile/*",
                   "arn:aws:sagemaker:*:*:space/*"
               ]
           },
           {
               "Sid": "ResourceAccessRequireDomainTag",
               "Effect": "Allow",
               "Action": [
                   "sagemaker:Update*",
                   "sagemaker:Delete*",
                   "sagemaker:Describe*"
               ],
               "Resource": "*",
               "Condition": {
                   "StringEquals": {
                       "aws:ResourceTag/sagemaker:domain-arn": "domain-arn"
                   }
               }
           },
           {
               "Sid": "AllowActionsThatDontSupportTagging",
               "Effect": "Allow",
               "Action": [
                   "sagemaker:DescribeImageVersion",
                   "sagemaker:UpdateImageVersion",
                   "sagemaker:DeleteImageVersion",
                   "sagemaker:DescribeModelCardExportJob",
                   "sagemaker:DescribeAction"
               ],
               "Resource": "*"
           },
           {
               "Sid": "DeleteDefaultApp",
               "Effect": "Allow",
               "Action": "sagemaker:DeleteApp",
               "Resource": "arn:aws:sagemaker:*:*:app/domain-id/*/jupyterserver/default"
           }
       ]
   }
   ```

------

1. Attachez la politique `StudioDomainResourceIsolationPolicy-domain-id` au rôle d’exécution du domaine en suivant les étapes décrites dans [Modification d’un rôle (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-managingrole-editing-console.html#roles-modify_permissions-policy). 

## AWS CLI
<a name="domain-resource-isolation-cli"></a>

La section suivante explique comment créer une nouvelle politique IAM qui limite l’accès aux ressources du domaine aux profils utilisateur dotés de la balise de domaine, et comment attacher cette politique au rôle d’exécution du domaine depuis l’ AWS CLI.

**Note**  
Cette politique ne fonctionne que dans les domaines qui utilisent Amazon SageMaker Studio Classic comme expérience par défaut.

1. À partir de votre machine locale, créez un fichier nommé `StudioDomainResourceIsolationPolicy-domain-id` avec le contenu suivant.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "CreateAPIs",
               "Effect": "Allow",
               "Action": "sagemaker:Create*",
               "NotResource": [
                   "arn:aws:sagemaker:*:*:domain/*",
                   "arn:aws:sagemaker:*:*:user-profile/*",
                   "arn:aws:sagemaker:*:*:space/*"
               ]
           },
           {
               "Sid": "ResourceAccessRequireDomainTag",
               "Effect": "Allow",
               "Action": [
                   "sagemaker:Update*",
                   "sagemaker:Delete*",
                   "sagemaker:Describe*"
               ],
               "Resource": "*",
               "Condition": {
                   "StringEquals": {
                       "aws:ResourceTag/sagemaker:domain-arn": "domain-arn"
                   }
               }
           },
           {
               "Sid": "AllowActionsThatDontSupportTagging",
               "Effect": "Allow",
               "Action": [
                   "sagemaker:DescribeImageVersion",
                   "sagemaker:UpdateImageVersion",
                   "sagemaker:DeleteImageVersion",
                   "sagemaker:DescribeModelCardExportJob",
                   "sagemaker:DescribeAction"
               ],
               "Resource": "*"
           },
           {
               "Sid": "DeleteDefaultApp",
               "Effect": "Allow",
               "Action": "sagemaker:DeleteApp",
               "Resource": "arn:aws:sagemaker:*:*:app/domain-id/*/jupyterserver/default"
           }
       ]
   }
   ```

------

1. Créez une nouvelle politique IAM à l'aide du fichier `StudioDomainResourceIsolationPolicy-domain-id`. 

   ```
   aws iam create-policy --policy-name StudioDomainResourceIsolationPolicy-domain-id --policy-document file://StudioDomainResourceIsolationPolicy-domain-id
   ```

1. Attachez la nouvelle politique à un rôle nouveau ou existant qui est utilisé comme rôle d’exécution du domaine. 

   ```
   aws iam attach-role-policy --policy-arn arn:aws:iam:account-id:policy/StudioDomainResourceIsolationPolicy-domain-id --role-name domain-execution-role
   ```