

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.

# Création d'une limite des autorisations
<a name="creating-a-permissions-boundary"></a>

Après avoir déployé les ensembles d'autorisations, vous définissez une limite des autorisations. Cette *limite des autorisations* est un mécanisme permettant de déléguer l'accès IAM uniquement aux utilisateurs qui développent, testent, lancent et gèrent votre infrastructure cloud. Ces utilisateurs ne peuvent effectuer que les actions autorisées par la politique et les limites des autorisations.

Vous pouvez définir la limite des autorisations dans un AWS CloudFormation modèle, puis l'utiliser CloudFormation StackSets pour déployer le modèle sur plusieurs comptes. Cela vous permet d'établir et de maintenir des politiques normalisées au sein de votre organisation en une seule opération. Pour plus d'informations et d'instructions, consultez la section [Travailler avec AWS CloudFormation StackSets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html) (CloudFormation documentation).

Le CloudFormation modèle suivant fournit un rôle IAM et crée une politique IAM qui sert de limite d'autorisation. À l'aide d'un ensemble de piles, vous pouvez déployer ce modèle sur tous les comptes membres de votre organisation.

```
CloudFormationRole:
  Type: "AWS::IAM::Role"
  Properties:
    AssumeRolePolicyDocument:
      Version: "2012-10-17"
      Statement:
        Effect: Allow
        Principal:
          Service: !Sub "cloudformation.${AWS::URLSuffix}"
        Action: "sts:AssumeRole"
        Condition:
          StringEquals:
            "aws:SourceAccount": !Ref "AWS::AccountId"
    Description: !Sub "DO NOT DELETE - Used by CloudFormation. Created by CloudFormation ${AWS::StackId}"
    ManagedPolicyArns:
      - !Sub "arn:${AWS::Partition}:iam::aws:policy/AdministratorAccess"
    PermissionsBoundary: !Ref DeveloperBoundary
    RoleName: CloudFormationRole

DeveloperBoundary:
  Type: "AWS::IAM::ManagedPolicy"
  Properties:
    Description: Permission boundary for developers
    ManagedPolicyName: PermissionsBoundary
    PolicyDocument:
      Version: "2012-10-17"
      Statement:
        - Sid: AllowModifyIamRolesWithBoundary
          Effect: Allow
          Action:
            - "iam:AttachRolePolicy"
            - "iam:CreateRole"
            - "iam:DeleteRolePolicy"
            - "iam:DetachRolePolicy"
            - "iam:PutRolePermissionsBoundary"
            - "iam:PutRolePolicy"
          Resource: !Sub "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/app/*"
          Condition:
            ArnEquals:
              "iam:PermissionsBoundary": !Sub "arn:${AWS::Partition}:iam::${AWS::AccountId}:policy/PermissionsBoundary"
        - Sid: AllowModifyIamRoles
          Effect: Allow
          Action:
            - "iam:DeleteRole"
            - "iam:TagRole"
            - "iam:UntagRole"
            - "iam:UpdateAssumeRolePolicy"
            - "iam:UpdateRole"
            - "iam:UpdateRoleDescription"
          Resource: !Sub "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/app/*"
        - Sid: OverlyPermissiveAllowedServices
          Effect: Allow
          Action:
            - "lambda:*"
            - "apigateway:*"
            - "events:*"
            - "s3:*"
            - "logs:*"
          Resource: "*"
```

Le **CloudFormationRole**rôle, la **PermissionsBoundary**politique et l'ensemble **DeveloperAccess**d'autorisations fonctionnent ensemble pour accorder les autorisations suivantes :
+ Les utilisateurs ont un accès en lecture seule à la plupart Services AWS, via la politique **ReadOnlyAccess** AWS gérée.
+ Les utilisateurs ont accès aux dossiers de support ouverts, par le biais de la politique de AWS gestion des **AWSSupportaccès**.
+ Les utilisateurs ont un accès en lecture seule au tableau de bord de la AWS Billing console, via la politique **AWSBillingReadOnlyAccess** AWS gérée.
+ Les utilisateurs peuvent approvisionner des produits à partir de Service Catalog, via la politique **AWSServiceCatalogEndUserFullAccess** AWS gérée.
+ Les utilisateurs peuvent valider et estimer le coût de n'importe quel CloudFormation modèle, grâce à la politique en ligne.
+ En utilisant le rôle **CloudFormationRole**IAM, les utilisateurs peuvent créer, mettre à jour ou supprimer toute CloudFormation pile commençant par **app/**.
+ Les utilisateurs peuvent l'utiliser CloudFormation pour créer, mettre à jour ou supprimer des rôles IAM commençant par **app/**. La politique **PermissionsBoundary**IAM empêche les utilisateurs d'augmenter leurs privilèges.
+ Les utilisateurs peuvent AWS Lambda approvisionner les ressources Amazon EventBridge CloudWatch, Amazon, Amazon Simple Storage Service (Amazon S3) et Amazon API Gateway uniquement en utilisant. CloudFormation

L'image suivante montre comment un utilisateur autorisé, tel qu'un développeur, peut créer un rôle IAM dans un compte membre en utilisant les ensembles d'autorisations, les rôles IAM et les limites des autorisations décrits dans ce guide :

1. L'utilisateur s'authentifie dans le centre d'identité IAM et assume le rôle **DeveloperAccess**IAM.

1. L'utilisateur lance l'`cloudformation:CreateStack`action et assume le rôle **CloudFormationRole**IAM.

1. L'utilisateur lance l'`iam:CreateRole`action et l'utilise CloudFormation pour créer un nouveau rôle IAM.

1. La politique **PermissionsBoundary**IAM est appliquée au nouveau rôle IAM.



![\[Utilisateur créant un rôle IAM soumis à la limite des autorisations du compte membre\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/transitioning-to-multiple-aws-accounts/images/2_create-iam-role.png)


La politique [AdministratorAccess](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html#jf_administrator)gérée est attachée au **CloudFormationRole**rôle, mais en raison de la stratégie **PermissionsBoundary**IAM, les autorisations effectives du **CloudFormationRole**rôle deviennent égales à la **PermissionsBoundary**politique. La **PermissionsBoundary**politique se référence elle-même lorsqu'elle autorise l'`iam:CreateRole`action, ce qui garantit que les rôles ne peuvent être créés que si la limite des autorisations est appliquée.