

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à.

# Resource-based politiche
<a name="auth-and-access_resource-policies"></a>

In una policy basata sulle risorse, si specifica chi può accedere al segreto e le azioni che è possibile eseguire sul segreto. Le policy basate su risorse possono essere utilizzate per:
+ Concedre l'accesso a più utenti o ruoli ad un singolo segreto. 
+ Concedi l'accesso a utenti o ruoli in altri AWS account.

Quando si allega una policy basata sulle risorse a un segreto nella console, Secrets Manager utilizza il motore di ragionamento automatico [Zelkova](https://aws.amazon.com/blogs/security/protect-sensitive-data-in-the-cloud-with-automated-reasoning-zelkova/) e l'API `ValidateResourcePolicy` per impedirti di concedere a una vasta gamma di entità IAM l'accesso ai tuoi segreti. In alternativa, è possibile chiamare `PutResourcePolicy` API con `BlockPublicPolicy` parametro da CLI o SDK. 

**Importante**  
La convalida della politica delle risorse e del `BlockPublicPolicy` parametro aiutano a proteggere le risorse impedendo che l'accesso pubblico venga concesso attraverso le politiche relative alle risorse direttamente collegate ai segreti dell'utente. Oltre a utilizzare queste funzionalità, esamina attentamente le seguenti politiche per verificare che non garantiscano l'accesso pubblico:  
Identity-based politiche collegate ai AWS principali associati (ad esempio, i ruoli IAM) 
Resource-based politiche allegate alle AWS risorse associate (ad esempio, chiavi AWS Key Management Service (AWS KMS)) 
Per rivedere le autorizzazioni relative ai tuoi segreti, consulta[Determinazione di chi ha le autorizzazioni per i segreti](determine-acccess_examine-iam-policies.md).

**Come visualizzare, modificare o eliminare la policy di risorse per un segreto (console)**

1. Apri la console Secrets Manager all'indirizzo [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/).

1. Dall'elenco dei segreti, scegli il segreto.

1. Nella pagina dei dettagli del segreto, nella sezione **Panoramica**, nella sezione **Autorizzazioni risorse**, scegli **Modifica autorizzazioni**.

1. Nel campo Codice, eseguire una delle operazioni seguenti, quindi scegliere **Save (Salva)**:
   + Per allegare o modificare una policy delle risorse, immettere la policy. 
   + Per eliminare la policy, deselezionare il campo del codice.

## AWS CLI
<a name="auth-and-access_resource_cli"></a>

**Example Recupero di una politica sulle risorse**  
L'esempio di [https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/get-resource-policy.html](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/get-resource-policy.html) seguente mostra come recuperare la policy basata su risorse collegata a un segreto.  

```
aws secretsmanager get-resource-policy \
    --secret-id MyTestSecret
```

**Example Eliminazione di una policy sulle risorse**  
L'esempio di [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/delete-resource-policy.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/delete-resource-policy.html) seguente mostra come eliminare la policy basata su risorse collegata a un segreto.  

```
aws secretsmanager delete-resource-policy \
    --secret-id MyTestSecret
```

**Example Aggiunta di una policy sulle risorse**  
L'esempio di [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/put-resource-policy.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/put-resource-policy.html) seguente mostra come aggiungere una policy di autorizzazioni a un segreto, verificando innanzitutto che la policy non fornisca un accesso ampio al segreto. La policy viene letta da un file. Per ulteriori informazioni, consulta [Caricamento AWS CLI dei parametri da un file](https://docs.aws.amazon.com//cli/latest/userguide/cli-usage-parameters-file.html) nella Guida AWS CLI per l'utente.  

```
aws secretsmanager put-resource-policy \
    --secret-id MyTestSecret \
    --resource-policy file://mypolicy.json \
    --block-public-policy
```
Contenuto di `mypolicy.json`:    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::123456789012:role/MyRole"
            },
            "Action": "secretsmanager:GetSecretValue",
            "Resource": "*"
        }
    ]
}
```

## AWS SDK
<a name="auth-and-access_resource_sdk"></a>

Per recuperare la policy collegata a un segreto, utilizzare [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetResourcePolicy.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetResourcePolicy.html).

Per eliminare una policy collegata a un segreto, utilizzare [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteResourcePolicy.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteResourcePolicy.html).

Per collegare una policy a un segreto, utilizzare [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_PutResourcePolicy.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_PutResourcePolicy.html). Se è già associata una policy, il comando la sostituisce con la nuova policy. La policy deve essere formattata come testo strutturato JSON. Vedere [Struttura dei documenti di policy JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies-introduction).

Per ulteriori informazioni, consulta [AWS SDK](asm_access.md#asm-sdks).

## Esempi
<a name="auth-and-access_resource-policy-examples"></a>

**Topics**
+ [Esempio: Autorizzazione per recuperare valori segreti individuali](#auth-and-access_examples_read)
+ [Esempio: autorizzazioni e VPC](#auth-and-access_examples_vpc)
+ [Esempio: Principale del servizio](#auth-and-access_service)

### Esempio: Autorizzazione per recuperare valori segreti individuali
<a name="auth-and-access_examples_read"></a>

Per concedere il permesso di recuperare valori segreti, è possibile allegare policy a segreti o identità. Per informazioni su come determinare il tipo di policy da utilizzare, consulta Policy [e Identity-based policy basate sulle risorse](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_identity-vs-resource.html). Per informazioni sul collegamento di una policy a un'identità, vedere [Resource-based politiche](#auth-and-access_resource-policies) e [Identity-based politiche](auth-and-access_iam-policies.md).

Questo esempio è utile quando si desidera concedere l'accesso a un singolo segreto a più utenti o ruoli. Per concedere l'autorizzazione a recuperare un gruppo di segreti in una chiamata API batch, consulta [Esempio: autorizzazione a recuperare un gruppo di valori segreti in un batch](auth-and-access_iam-policies.md#auth-and-access_examples_batch).

**Example Leggi un segreto**  
È possibile concedere l'accesso a un segreto allegando a tale segreto la policy seguente.    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::{{111122223333}}:role/{{EC2RoleToAccessSecrets}}"
            },
            "Action": "secretsmanager:GetSecretValue",
            "Resource": "*"
        }
    ]
}
```

### Esempio: autorizzazioni e VPC
<a name="auth-and-access_examples_vpc"></a>

Se è necessario accedere a Secrets Manager da un VPC, è possibile assicurarsi che le richieste a Secrets Manager provengano dal VPC includendo una condizione nelle policy di autorizzazione. Per ulteriori informazioni, consultare [Limita le richieste con le condizioni degli endpoint VPC](best-practices.md#iam-contextkeys-vpcendpoint) e [Utilizzo di un Gestione dei segreti AWS endpoint VPC](vpc-endpoint-overview.md).

Assicurati che le richieste di accesso al segreto provenienti da altri AWS servizi provengano anche dal VPC, altrimenti questa politica negherà loro l'accesso.

**Example Richiedi che le richieste arrivino tramite un endpoint VPC**  
La seguente policy consente all'utente di eseguire operazioni Secret Manager solo quando la richiesta proviene tramite l'endpoint VPC specificato {{`vpce-1234a5678b9012c`}}.    
****  

```
{
"Id": "example-policy-1",
"Version":"2012-10-17",		 	 	 
"Statement": [
{
  "Sid": "{{RestrictGetSecretValueoperation}}",
  "Effect": "Deny",
  "Principal": "*",
  "Action": "secretsmanager:GetSecretValue",
  "Resource": "*",
  "Condition": {
    "StringNotEquals": {
      "aws:sourceVpce": "{{vpce-12345678"}}
    }
  }
}
]
}
```

**Example Richiedi che le richieste provengano da un VPC**  
I seguenti comandi della policy consentono di creare e gestire i segreti solo quando la loro provenienza è {{`vpc-12345678`}}. Inoltre, la policy consente le operazioni che utilizzano il valore del segreto crittografato solo quando le richieste provengono da `vpc-2b2b2b2b`. Puoi usare una policy come questa se esegui un'applicazione in un VPC, ma utilizzi un secondo VPC separato per le funzioni di gestione.     
****  

```
{
"Id": "example-policy-2",
"Version":"2012-10-17",		 	 	 
"Statement": [
{
  "Sid": "{{AllowAdministrativeActionsfromONLYvpc-12345678}}",
  "Effect": "Deny",
  "Principal": "*",
  "Action": [
    "secretsmanager:Create*",
    "secretsmanager:Put*",
    "secretsmanager:Update*",
    "secretsmanager:Delete*",
    "secretsmanager:Restore*",
    "secretsmanager:RotateSecret",
    "secretsmanager:CancelRotate*",
    "secretsmanager:TagResource",
    "secretsmanager:UntagResource"
  ],
  "Resource": "*",
  "Condition": {
    "StringNotEquals": {
      "aws:sourceVpc": "{{vpc-12345678}}"
    }
  }
},
{
  "Sid": "{{AllowSecretValueAccessfromONLYvpc-2b2b2b2b}}",
  "Effect": "Deny",
  "Principal": "*",
  "Action": [
    "secretsmanager:GetSecretValue"
  ],
  "Resource": "*",
  "Condition": {
    "StringNotEquals": {
      "aws:sourceVpc": "{{vpc-2b2b2b2b}}"
    }
  }
}
]
}
```

### Esempio: Principale del servizio
<a name="auth-and-access_service"></a>

Se la policy relativa alle risorse allegata al tuo segreto include un [AWS service principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-services), ti consigliamo di utilizzare le chiavi di condizione SourceAccount globali [aws: SourceArn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn) [e aws:](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount). I valori ARN e account sono inclusi nel contesto di autorizzazione solo quando una richiesta arriva a Secrets Manager da un altro servizio AWS . Questa combinazione di condizioni evita un potenziale [confused deputy scenario](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html) (scenario "deputy confused"). 

Se una risorsa ARN include caratteri non consentiti in una policy di risorse, non potrai utilizzare l'ARN di tale risorsa nel valore della chiave di condizione `aws:SourceArn`. Devi invece utilizzare la chiave di condizione `aws:SourceAccount`. Per ulteriori informazioni, consulta [Requisiti IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-names).

I service principal non vengono in genere utilizzati come responsabili in una policy allegata a un segreto, ma alcuni AWS servizi lo richiedono. Per informazioni sulle policy delle risorse che un servizio richiede di allegare a un segreto, consultare la documentazione del servizio.

**Example Consenti a un servizio di accedere a un segreto utilizzando un service principal**    
****  

```
{
"Version":"2012-10-17",		 	 	 
"Statement": [
{
  "Effect": "Allow",
  "Principal": {
    "Service": [
      "{{s3}}.amazonaws.com"
    ]
  },
  "Action": "secretsmanager:GetSecretValue",
  "Resource": "*",
  "Condition": {
    "ArnLike": {
      "aws:sourceArn": "arn:aws:{{s3}}::{{123456789012}}:*"
    },
    "StringEquals": {
      "aws:sourceAccount": "{{123456789012}}"
    }
  }

}
]
}
```