

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Valutazione delle policy per le richieste all'interno di un singolo account
<a name="reference_policies_evaluation-logic_policy-eval-basics"></a>

## Valutazione della policy per un ruolo IAM
<a name="policy-eval-basics-single-account-role"></a>

Il seguente diagramma di flusso fornisce dettagli su come viene presa una decisione di valutazione della policy per un ruolo IAM all’interno di un singolo account.

![Diagramma di flusso di valutazione per un ruolo IAM all’interno di un singolo account](http://docs.aws.amazon.com/it_it/IAM/latest/UserGuide/images/PolicyEvaluationSingleAccountRole.png)


## Valutazione della policy per un utente IAM
<a name="policy-eval-basics-single-account-user"></a>

Il seguente diagramma di flusso fornisce dettagli su come viene presa una decisione di valutazione della policy per un utente IAM all’interno di un singolo account.

![Diagramma di flusso di valutazione per un utente IAM all’interno di un singolo account](http://docs.aws.amazon.com/it_it/IAM/latest/UserGuide/images/PolicyevaluationSingleAccountUser.png)


## Esempio di valutazione delle policy basate su identità e delle policy basate su risorse
<a name="reference_policies_evaluation-logic_policies_evaluation_example"></a>

I tipi di policy più comuni sono quelle basate su identità e quelle basate su risorse. Quando viene richiesto l'accesso a una risorsa, AWS valuta tutte le autorizzazioni concesse dalle politiche per **almeno un Consenti** all'interno dello stesso account. Un rifiuto esplicito in una qualsiasi di queste policy sostituisce l'autorizzazione.

**Importante**  
Se la policy basata sull'identità o la policy basata sulle risorse all'interno dello stesso account consente la richiesta e l'altra no, la richiesta è comunque consentita.

Supponiamo che Carlos, con il nome utente `carlossalazar`, voglia salvare un file nel bucket `amzn-s3-demo-bucket-carlossalazar-logs` di Amazon S3. 

Supponi inoltre che la policy seguente sia collegata all'utente 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'istruzione `AllowS3ListRead` in questa policy consente a Carlos di visualizzare un elenco di tutti i bucket nell'account. L'istruzione `AllowS3Self` consente a Carlos l'accesso completo al bucket con lo stesso nome usato per il nome utente. L'istruzione `DenyS3Logs` nega a Carlos l'accesso a qualsiasi bucket di S3 il cui nome includa `log`. 

Inoltre, la seguente policy basata su risorse (detta policy del bucket) viene collegata al bucket `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"
            ]
        }
    ]
}
```

------

Questa policy specifica che solo l'utente `carlossalazar` può accedere al bucket `amzn-s3-demo-bucket-carlossalazar`.

Quando Carlos richiede di salvare un file nel `amzn-s3-demo-bucket-carlossalazar-logs` bucket, AWS determina quali politiche si applicano alla richiesta. In questo caso, sono applicabili solo la policy basata su identità e la policy basata su risorse. Entrambe sono policy di autorizzazione. Poiché non ci sono limiti di autorizzazione applicabili, la logica di valutazione viene ridotta a quanto segue.

![Diagramma di flusso della valutazione](http://docs.aws.amazon.com/it_it/IAM/latest/UserGuide/images/EffectivePermissionsShort.png)


AWS verifica innanzitutto la presenza di un'`Deny`istruzione che si applichi al contesto della richiesta. Ne trova una, perché la policy basata su identità rifiuta esplicitamente a Carlos l'accesso a qualsiasi bucket di S3 utilizzato per la creazione di log. A Carlos viene negato l'accesso. 

Supponiamo che poi si renda conto del suo errore e cerchi di salvare il file nel `amzn-s3-demo-bucket-carlossalazar` bucket. AWS verifica la presenza di una `Deny` dichiarazione e non la trova. Verifica quindi le policy di autorizzazione. Sia la policy basata sull'identità che la policy basata sulle risorse consentono la richiesta. Pertanto, AWS consente la richiesta. Se uno dei due avesse rifiutato esplicitamente l'istruzione, la richiesta sarebbe stata negata. Se uno dei tipi di policy consente la richiesta e l'altro no, la richiesta è comunque consentita.