Specificazione delle chiavi KMS nelle istruzioni della policy IAM - AWS Key Management Service

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

Specificazione delle chiavi KMS nelle istruzioni della policy IAM

Puoi utilizzare una policy IAM per consentire a un principale di utilizzare o gestire le chiavi KMS. Le chiavi KMS sono specificate nell'elemento Resource dell'istruzione della policy.

  • Per specificare una chiave KMS in un'istruzione delle policy IAM, devi utilizzare l'ARN della chiave. Non è possibile utilizzare un ID chiave, un nome alias o l'ARN di alias per identificare una chiave KMS in un'istruzione della policy IAM.

    Ad esempio: "Resource": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"

    Per controllare l'accesso a una chiave KMS in base ai relativi alias, usa le chiavi kms: RequestAlias o kms: condition. ResourceAliases Per informazioni dettagliate, vedi ABAC per AWS KMS.

    Utilizzate un alias ARN come risorsa solo in una dichiarazione di policy che controlla l'accesso alle operazioni di alias, ad esempio CreateAlias, o. UpdateAliasDeleteAlias Per informazioni dettagliate, vedi Controllo dell'accesso agli alias.

  • Per specificare più chiavi KMS nell'account e nella regione, utilizza i caratteri jolly (*) nelle posizioni dell'ID risorsa e della regione dell'ARN di chiave.

    Ad esempio, per specificare tutte le chiavi KMS nella Regione Stati Uniti occidentali (Oregon) di un account, utilizza "Resource": "arn:aws:kms:us-west-2:111122223333:key/*". Per specificare tutte le chiavi KMS in tutte le Regioni dell'account, utilizza "Resource": "arn:aws:kms:*:111122223333:key/*".

  • Per rappresentare tutte le chiavi KMS, utilizza solo un carattere jolly ("*"). Utilizza questo formato per operazioni che non utilizzano alcuna chiave KMS particolare, vale a dire CreateKey, GenerateRandome. ListAliasesListKeys

Quando scrivi le istruzioni delle policy, come best practice è consigliabile limitare le chiavi KMS a quelle che i principali devono utilizzare, anziché concedere loro l'accesso a tutte le chiavi KMS.

Ad esempio, la seguente dichiarazione di policy IAM consente al principale di richiamare le operazioni DescribeKeyGenerateDataKey,, Decrypt solo sulle chiavi KMS elencate nell'Resourceelemento dell'informativa politica. La specifica delle chiavi KMS in base all'ARN della chiave, che è una best practice, garantisce che le autorizzazioni siano limitate solo alle chiavi KMS indicate.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321" ] } }

Per applicare l'autorizzazione a tutte le chiavi KMS di un particolare trusted Account AWS, puoi utilizzare caratteri jolly (*) nelle posizioni Region e Key ID. Ad esempio, la seguente istruzione di policy consente al principale di richiamare le operazioni specificate in tutte le chiavi KMS in due account di esempio attendibili.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:GenerateDataKey", "kms:GenerateDataKeyPair" ], "Resource": [ "arn:aws:kms:*:111122223333:key/*", "arn:aws:kms:*:444455556666:key/*" ] } }

Inoltre puoi utilizzare un carattere jolly ("*") da solo nell'elemento Resource. Poiché consente l'accesso a tutte le chiavi KMS che l'account ha l'autorizzazione di utilizzare, è consigliato principalmente per le operazioni senza una particolare chiave KMS e per le istruzioni Deny. Puoi inoltre utilizzarlo nelle istruzioni di policy che consentono esclusivamente operazioni di sola lettura meno sensibili. Per determinare se un' AWS KMS operazione coinvolge una particolare chiave KMS, cerca il valore della chiave KMS nella colonna Risorse della tabella in. AWS KMS autorizzazioni

Ad esempio, l'istruzione di policy riportata di seguito utilizza un effetto Deny per impedire ai principali di utilizzare le operazioni specificate per qualsiasi chiave KMS. Viene utilizzato un carattere jolly nell'elemento Resource per rappresentare tutte le chiavi KMS.

{ "Version": "2012-10-17", "Statement": { "Effect": "Deny", "Action": [ "kms:CreateKey", "kms:PutKeyPolicy", "kms:CreateGrant", "kms:ScheduleKeyDeletion" ], "Resource": "*" } }

Nell'istruzione di policy seguente viene utilizzato un carattere jolly da solo per rappresentare tutte le chiavi KMS. Tuttavia consente solo operazioni di sola lettura meno sensibili e operazioni che non si applicano a nessuna particolare chiave KMS.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:CreateKey", "kms:ListKeys", "kms:ListAliases", "kms:ListResourceTags" ], "Resource": "*" } }