Come posso applicare una policy basata sulle risorse su un segreto AWS Secrets Manager?

2 minuti di lettura
0

Come posso controllare l'accesso ai segreti AWS Secrets Manager utilizzando policy basate sulle risorse?

Breve descrizione

Con le policy basate sulle risorse, puoi specificare l'accesso degli utenti a un segreto e quali operazioni può eseguire un utente AWS Identity and Access Management (IAM).

Nota: un segreto è definito come una risorsa con Secrets Manager.

I casi d'uso più comuni per le policy basate sulle risorse di Secrets Manager sono:

In questo esempio di policy basata sulle risorse, l'elemento IAM Effect specifica se l'istruzione restituisce l'autorizzazione o il rifiuto esplicito. L'elemento IAM Action definisce le operazioni eseguite con il segreto. L'elemento IAM Resource è il segreto a cui è collegata la policy. L'elemento IAM Principal specifica l'utente che dispone dell'accesso per eseguire operazioni con il segreto.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "secretsmanager:*",
      "Principal": {"AWS": "arn:aws:iam::123456789999:user/Mary"},
      "Resource": "*"
    }
  ]
}

Risoluzione

Segui queste istruzioni per applicare una policy basata sulle risorse in Secrets Manager:

Nota: se riscontri degli errori durante l'esecuzione dei comandi dell'Interfaccia della linea di comando AWS (AWS CLI), assicurati di utilizzare la versione più recente dell'AWS CLI.

1.    Segui le istruzioni per la creazione di un segreto. Annota l'ARN del segreto.

2.    Copia e incolla questa policy nel tuo editor di testo preferito, quindi salvala come file JSON, ad esempio my_explicit_deny_policy.json.

{ "Version": "2012-10-17",
"Statement": [
    {
      "Effect": "Deny",
      "Action": "secretsmanager:GetSecretValue",
      "Principal": {"AWS": "arn:aws:iam::123456789999:user/Mary"},
      "Resource": "*"
    }
  ]
}

3.    Utilizza il comando dell'AWS CLI put-resource-policy per inserire una policy delle risorse per il segreto impedendo esplicitamente all'utente IAM Mary di recuperare il valore del segreto.

aws secretsmanager put-resource-policy --secret-id My_Resource_Secret --resource-policy file:// My_explicit_deny_Policy.json

4.    Ricevi un output simile al seguente:

{
"ARN": "arn:aws:secretsmanager:<your region>:123456789999:secret:My_Resource_Secret",
"Name": "My_Resource_Secret"
}

Nota: l'autorizzazione decrypt del Servizio di gestione delle chiavi AWS (AWS KMS) è richiesta solo se utilizzi le chiavi AWS KMS per crittografare il segreto. Un segreto non può essere recuperato da un principale IAM in un account di terze parti se è crittografato dalla chiave AWS KMS predefinita.

Per ulteriori informazioni, consulta Utilizzo di policy basate sulle risorse per Secrets Manager.


AWS UFFICIALE
AWS UFFICIALEAggiornata 3 anni fa