

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.

# Exemples de configuration de structures de phases
<a name="model-registry-staging-construct-set-up"></a>

Pour configurer les structures de scène de votre Amazon SageMaker Model Registry, l'administrateur devra accorder les autorisations appropriées aux rôles prévus. Vous trouverez ci-dessous des exemples de configuration de structures de phases pour différents rôles.

**Note**  
Les utilisateurs d'un domaine Amazon SageMaker AI pourront consulter toutes les étapes définies dans le domaine, mais ne pourront utiliser que celles pour lesquelles ils sont autorisés.

Les phases sont définies par le paramètre `ModelLifeCycle` et ont la structure suivante. L’administrateur configure les autorisations permettant d’accéder à `stage` et `stageStatus` en fonction des rôles. Les utilisateurs qui assument un rôle peuvent utiliser les éléments `stage` et `stageStatus` pertinents et inclure leur propre `stageDescription`.

```
ModelLifeCycle {
    stage: String # Required (e.g., Development/QA/Production)
    stageStatus: String # Required (e.g., PendingApproval/Approved/Rejected)  
    stageDescription: String # Optional
}
```

Le tableau suivant contient les modèles de structure de phases prédéfinis du registre de modèles. Vous pouvez définir vos propres structures de phases en fonction de vos cas d’utilisation. Les autorisations pertinentes devront être configurées avant que les utilisateurs puissent les utiliser.


| Étape | Statut de phase | 
| --- | --- | 
|  Proposition  |  PendingApproval  | 
|  Développement  |  InProgress  | 
|  QA  |  OnHold  | 
|  PreProduction  |  Approuvé  | 
|  Production  |  Refusée  | 
|  Archivé  |  Hors service  | 

Le `ModelLifeCycle` paramètre peut être invoqué de la manière suivante APIs :
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModelPackage.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModelPackage.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateModelPackage.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateModelPackage.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeModelPackage.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeModelPackage.html)

------
#### [ Policy for a data scientist role ]

Voici un exemple de politique IAM utilisant les clés de condition du cycle de vie du modèle. Vous pouvez les modifier en fonction de vos besoins. Dans cet exemple, les autorisations du rôle sont limitées pour spécifier ou définir la phase du cycle de vie du modèle afin de :
+ créer ou mettre à jour un modèle avec la phase `"Development"` et le statut `"Approved"` ;
+ mettre à jour un package de modèle avec l’assurance qualité de phase, `"QA"`, et le statut `"PendingApproval"`.

```
{
    "Action" : [
        "sagemaker:UpdateModelPackage",
        "sagemaker:CreateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage" : "Development"
            "sagemaker:ModelLifeCycle:stageStatus" : "Approved"       
        }
    }
},
{
    "Action" : [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage" : "Staging"
            "sagemaker:ModelLifeCycle:stageStatus" : "PendingApproval"       
        }
    }
}
```

------
#### [ Policy for a quality assurance specialist ]

Voici un exemple de politique IAM utilisant les clés de condition du cycle de vie du modèle. Vous pouvez les modifier en fonction de vos besoins. Dans cet exemple, les autorisations du rôle sont limitées pour spécifier ou définir la phase du cycle de vie du modèle afin de :
+ mettre à jour un package de modèle avec :
  + la phase `"QA"` et le statut `"Approved"` ou `"Rejected"` ;
  + la phase `"Production"` et le statut `"PendingApproval"`.

```
{
    "Action": [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage": "Staging",
            "sagemaker:ModelLifeCycle:stageStatus": "Approved"
        }
    }
}, {
    "Action": [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage": "Staging",
            "sagemaker:ModelLifeCycle:stageStatus": "Rejected"
        }
    }
}, {
    "Action": [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage": "Production",
            "sagemaker:ModelLifeCycle:stageStatus": "PendingApproval"
        }
    }
}
```

------
#### [ Policy for lead engineer role ]

Voici un exemple de politique IAM utilisant les clés de condition du cycle de vie du modèle. Vous pouvez les modifier en fonction de vos besoins. Dans cet exemple, les autorisations du rôle sont limitées pour spécifier ou définir la phase du cycle de vie du modèle afin de :
+ mettre à jour un package de modèle avec :
  + la phase `"Production"` et le statut `"Approved"` ou `"Rejected"` ;
  + la phase `"Development"` et le statut `"PendingApproval"`.

```
{
    "Action" : [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "ForAnyvalue:StringEquals" : {
            "sagemaker:ModelLifeCycle:stage" : "Production",
            "sagemaker:ModelLifeCycle:stageStatus" : "Approved"
        }
    }
},
{
    "Action" : [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals:" {
            "sagemaker:ModelLifeCycle:stage" : "Production"
            "sagemaker:ModelLifeCycle:stageStatus" : "Rejected"
        }
    }
},
{
    "Action" : [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage" : "Development"
            "sagemaker:ModelLifeCycle:stageStatus" : "PendingApproval"
        }
    }
}
```

------

Pour recevoir EventBridge des notifications Amazon sur toute mise à jour du statut d'un modèle, consultez l'exemple dans[Recevez des notifications d'événements pour ModelLifeCycle](model-registry-staging-construct-event-bridge.md). Pour un exemple de EventBridge charge utile que vous pourriez recevoir, voir[SageMaker modification de l'état du package du modèle](automating-sagemaker-with-eventbridge.md#eventbridge-model-package).