

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.

# Évaluation des politiques pour les demandes au sein d’un même compte
<a name="reference_policies_evaluation-logic_policy-eval-basics"></a>

## Évaluation des politiques pour un rôle IAM
<a name="policy-eval-basics-single-account-role"></a>

Le diagramme suivant fournit des détails sur la manière dont une décision d’évaluation de politique est prise pour un rôle IAM au sein d’un compte unique.

![Organigramme d’évaluation d’un rôle IAM au sein d’un compte unique](http://docs.aws.amazon.com/fr_fr/IAM/latest/UserGuide/images/PolicyEvaluationSingleAccountRole.png)


## Évaluation des politiques pour un utilisateur IAM
<a name="policy-eval-basics-single-account-user"></a>

Le diagramme suivant fournit des détails sur la manière dont une décision d’évaluation de politique est prise pour un utilisateur IAM au sein d’un compte unique.

![Organigramme d’évaluation d’un utilisateur IAM au sein d’un compte unique](http://docs.aws.amazon.com/fr_fr/IAM/latest/UserGuide/images/PolicyevaluationSingleAccountUser.png)


## Exemple d'évaluation de politique basée sur l'identité et sur les ressources
<a name="reference_policies_evaluation-logic_policies_evaluation_example"></a>

Les types de politiques les plus courants sont celles basées sur l'identité et les ressources. Lorsque l'accès à une ressource est demandé, AWS évalue toutes les autorisations accordées par les politiques pour **au moins une autorisation au sein** du même compte. Un rejet explicite dans l'une de ces politiques remplace l'autorisation.

**Important**  
Si la politique basée sur les identités ou celle basée sur les ressources dans le même compte autorise la demande et que l'autre ne l'autorise pas, la demande reste autorisée.

Supposons que le nom d'utilisateur de Carlos soit `carlossalazar` et que ce dernier essaie d'enregistrer un fichier dans le compartiment Amazon S3 `amzn-s3-demo-bucket-carlossalazar-logs`. 

Supposons également que la politique suivante soit attachée à l'utilisateur IAM `carlossalazar`.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowS3ListRead",
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketLocation",
                "s3:GetAccountPublicAccessBlock",
                "s3:ListAccessPoints",
                "s3:ListAllMyBuckets"
            ],
            "Resource": "arn:aws:s3:::*"
        },
        {
            "Sid": "AllowS3Self",
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket-carlossalazar/*",
                "arn:aws:s3:::amzn-s3-demo-bucket-carlossalazar"
            ]
        },
        {
            "Sid": "DenyS3Logs",
            "Effect": "Deny",
            "Action": "s3:*",
            "Resource": "arn:aws:s3:::*log*"
        }
    ]
}
```

------

L'instruction `AllowS3ListRead` de cette politique autorise Carlos à afficher une liste de tous les compartiments du compte. L'instruction `AllowS3Self` accorde à Carlos un accès total au compartiment du même nom que son nom d'utilisateur. L'instruction `DenyS3Logs` refuse à Carlos l'accès à n'importe quel compartiment S3 comprenant `log` dans son nom. 

De plus, la politique basée sur les ressources suivante (appelée politique de compartiment) est attachée au compartiment `amzn-s3-demo-bucket-carlossalazar`. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::{{123456789012}}:user/carlossalazar"
            },
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket-carlossalazar/*",
                "arn:aws:s3:::amzn-s3-demo-bucket-carlossalazar"
            ]
        }
    ]
}
```

------

Cette politique spécifie que seul l'utilisateur `carlossalazar` peut accéder au compartiment `amzn-s3-demo-bucket-carlossalazar`.

Lorsque Carlos demande l'enregistrement d'un fichier dans le `amzn-s3-demo-bucket-carlossalazar-logs` bucket, il AWS détermine les politiques qui s'appliquent à la demande. Dans ce cas, seule les politiques basées sur l'identité et les ressources s'appliquent. Il s'agit de deux politiques d'autorisations. La logique d'évaluation est réduite à la logique suivante, car aucune limite d'autorisations ne s'applique.

![Diagramme d'évaluation](http://docs.aws.amazon.com/fr_fr/IAM/latest/UserGuide/images/EffectivePermissionsShort.png)


AWS vérifie d'abord si une `Deny` déclaration s'applique au contexte de la demande. Il en trouve une, car la politique basée sur l'identité refuse explicitement à Carlos l'accès à n'importe quel compartiment S3 utilisé pour la journalisation. Carlos se voit refuser l'accès. 

Supposons qu'il se rende compte de son erreur et essaie d'enregistrer le fichier dans le `amzn-s3-demo-bucket-carlossalazar` bucket. AWS recherche une `Deny` déclaration et n'en trouve aucune. Ensuite, il vérifie les politiques d'autorisations. La politique basée sur l'identité et celle basée sur les ressources autorisent la demande. AWS Autorise donc la demande. Si l'un d'entre eux refuse explicitement l'instruction, alors la demande est refusée. Si l'un des types de politique autorise la demande et que l'autre ne l'autorise pas, la demande reste autorisée.