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à.
Utilizzate gli alias per controllare l'accesso alle chiavi KMS
È possibile controllare l'accesso alle KMS chiavi in base agli alias associati alla KMS chiave. Per farlo, usa i tasti kms: RequestAlias e kms: ResourceAliases condition. Questa funzionalità fa parte del AWS KMS supporto per il controllo degli accessi basato sugli attributi (). ABAC
La chiave di kms:RequestAlias
condizione consente o nega l'accesso a una KMS chiave in base all'alias contenuto in una richiesta. La chiave kms:ResourceAliases
condizionale consente o nega l'accesso a una KMS chiave in base agli alias associati alla chiave. KMS
Queste funzionalità non consentono di identificare una KMS chiave utilizzando un alias nell'resource
elemento di una dichiarazione politica. Quando un alias è il valore di un resource
elemento, la policy si applica alla risorsa alias, non a qualsiasi KMS chiave che potrebbe essere associata ad essa.
Nota
Potrebbero essere necessari fino a cinque minuti prima che le modifiche ai tag e agli alias influiscano sull'KMSautorizzazione delle chiavi. Le modifiche recenti potrebbero essere visibili nelle API operazioni prima che influiscano sull'autorizzazione.
Quando utilizzi gli alias per controllare l'accesso alle KMS chiavi, considera quanto segue:
-
Utilizzare gli alias per rafforzare la best practice dell'accesso con privilegio minimo. IAMAssegna ai responsabili solo le autorizzazioni di cui hanno bisogno solo per le KMS chiavi che devono usare o gestire. Ad esempio, utilizzate gli alias per identificare le KMS chiavi utilizzate per un progetto. Quindi concedi al team di progetto il permesso di utilizzare solo KMS le chiavi con gli alias del progetto.
-
Fai attenzione a concedere ai principali le autorizzazioni
kms:CreateAlias
,kms:UpdateAlias
, oppurekms:DeleteAlias
che consentono di aggiungere, modificare ed eliminare alias. Quando usi gli alias per controllare l'accesso alle KMS chiavi, la modifica di un alias può dare ai responsabili il permesso di usare KMS chiavi che altrimenti non avrebbero avuto il permesso di usare. Può anche negare l'accesso alle KMS chiavi di cui altri dirigenti hanno bisogno per svolgere il proprio lavoro. -
Controlla i tuoi responsabili Account AWS che attualmente dispongono dell'autorizzazione a gestire gli alias e modifica le autorizzazioni, se necessario. Gli amministratori chiave che non sono autorizzati a modificare le politiche chiave o a creare sovvenzioni possono controllare l'accesso alle KMS chiavi se sono autorizzati a gestire gli alias.
Ad esempio, la console policy delle chiavi predefinita per amministratori delle chiavi include le autorizzazioni
kms:CreateAlias
,kms:DeleteAlias
, ekms:UpdateAlias
. IAMle politiche potrebbero concedere autorizzazioni di alias per tutte le chiavi del tuo. KMS Account AWS Ad esempio, la policy AWSKeyManagementServicePowerUsergestita consente ai principali di creare, eliminare ed elencare alias per tutte le KMS chiavi ma non di aggiornarle. -
Prima di impostare una politica che dipenda da un alias, esamina gli alias delle chiavi del KMS tuo. Account AWS Assicurati che la policy sia valida solo per gli alias che intendi includere. Usa CloudTrail registri e CloudWatch allarmi per avvisarti delle modifiche agli alias che potrebbero influire sull'accesso alle tue chiavi. KMS Inoltre, la ListAliasesrisposta include la data di creazione e la data dell'ultimo aggiornamento per ogni alias.
-
Le condizioni della policy degli alias utilizzano la corrispondenza dei pattern; non sono legate a una particolare istanza di un alias. Una policy che utilizza chiavi di condizione basate su alias influisce su tutti gli alias nuovi ed esistenti che corrispondono al modello. Se si elimina e si ricrea un alias che corrisponde a una condizione di policy, la condizione si applica al nuovo alias, esattamente come quello precedente.
La chiave di condizione kms:RequestAlias
si basa sull'alias specificato esplicitamente in una richiesta di operazione. La chiave di kms:ResourceAliases
condizione dipende dagli alias associati a una KMS chiave, anche se non compaiono nella richiesta.
km: RequestAlias
Consenti o nega l'accesso a una KMS chiave in base all'alias che identifica la KMS chiave in una richiesta. È possibile utilizzare la chiave kms: RequestAlias condition in una politica o in una politica chiave. IAM Si applica alle operazioni che utilizzano un alias per identificare una KMS chiave in una richiesta, vale a dire le operazioni crittografiche, DescribeKeye. GetPublicKey Non è valido per le operazioni di alias, come o. CreateAliasDeleteAlias
Nella chiave condizione, specificare un Nome alias o modello di nome alias. Non è possibile specificare un alias ARN.
Ad esempio, la seguente dichiarazione di politica chiave consente ai principali di utilizzare le operazioni specificate sulla KMS chiave. L'autorizzazione è effettiva solo quando la richiesta utilizza un alias che include alpha
l'identificazione della KMS chiave.
{ "Sid": "Key policy using a request alias condition", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/alpha-developer" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringLike": { "kms:RequestAlias": "alias/*alpha*" } } }
La seguente richiesta di esempio da un principale autorizzato soddisferebbe la condizione. Tuttavia, una richiesta che utilizza un ID chiave, una chiave ARN o un alias diverso non soddisferebbe la condizione, anche se questi valori identificassero la stessa KMS chiave.
$
aws kms describe-key --key-id "arn:aws:kms:us-west-2:111122223333:alias/project-alpha"
km: ResourceAliases
Consenti o nega l'accesso a una KMS chiave in base agli alias associati alla KMS chiave, anche se l'alias non viene utilizzato in una richiesta. La chiave kms: ResourceAliases condition consente di specificare un alias o un pattern di alias, ad esempio, in modo da poterlo utilizzare in una IAM politica per controllare l'accesso a più KMS chiavi nella stessa alias/test*
regione. È valido per qualsiasi AWS KMS operazione che utilizza una chiave. KMS
Ad esempio, la seguente IAM politica consente ai principali di richiamare in due Account AWS le operazioni specificate sulle KMS chiavi. Tuttavia, l'autorizzazione si applica solo alle KMS chiavi associate agli alias che iniziano con. restricted
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AliasBasedIAMPolicy", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": [ "arn:aws:kms:*:111122223333:key/*", "arn:aws:kms:*:444455556666:key/*" ], "Condition": { "ForAnyValue:StringLike": { "kms:ResourceAliases": "alias/restricted*" } } } ] }
La condizione kms:ResourceAliases
è una condizione della risorsa, non la richiesta. Pertanto, una richiesta che non specifica l'alias può ancora soddisfare la condizione.
La seguente richiesta di esempio, che specifica un alias corrispondente, soddisfa la condizione.
$
aws kms enable-key-rotation --key-id "alias/restricted-project"
Tuttavia, anche la seguente richiesta di esempio soddisfa la condizione, a condizione che la KMS chiave specificata abbia un alias che inizia conrestricted
, anche se tale alias non viene utilizzato nella richiesta.
$
aws kms enable-key-rotation --key-id "1234abcd-12ab-34cd-56ef-1234567890ab"