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à.
Puoi controllare l'accesso alle AWS KMS risorse e alle operazioni quando la richiesta proviene da VPC o utilizza un endpoint VPC. A tale scopo, utilizza una delle seguenti chiavi di condizione globale in una policy delle chiavi o una policy IAM.
-
Usa la chiave di condizione
aws:sourceVpce
per concedere o limitare l'accesso in base all'endpoint VPC. -
Usa la chiave di condizione
aws:sourceVpc
per concedere o limitare l'accesso in base al VPC che ospita l'endpoint privato.
Nota
Fai attenzione durante la creazione delle policy IAM e delle policy delle chiavi basate sull'endpoint VPC. Se una dichiarazione di policy richiede che le richieste provengano da un particolare VPC o endpoint VPC, le richieste provenienti da AWS servizi integrati che utilizzano una AWS KMS risorsa per conto dell'utente potrebbero non riuscire. Per assistenza, consulta Utilizzo delle condizioni di endpoint VPC nelle policy con autorizzazioni AWS KMS.
Inoltre, la chiave di condizione aws:sourceIP
non è efficace quando la richiesta proviene da un endpoint Amazon VPC. Per limitare le richieste a un endpoint VPC, utilizza il comando aws:sourceVpce
o le chiavi di condizione aws:sourceVpc
. Per ulteriori informazioni, consulta la sezione Gestione delle identità e degli accessi per endpoint VPC e servizi endpoint VPC nella Guida di AWS PrivateLink .
È possibile utilizzare queste chiavi di condizione globali per controllare l'accesso a AWS KMS keys (chiavi KMS), gli alias e a operazioni del genere CreateKeyche non dipendono da alcuna risorsa particolare.
Ad esempio, la seguente policy delle chiavi di esempio consente a un utente di eseguire alcune operazioni di crittografia con una chiave KMS solo quando la richiesta utilizza l'endpoint VPC specificato. Quando un utente effettua una richiesta a AWS KMS, l'ID dell'endpoint VPC nella richiesta viene confrontato con il valore della chiave di aws:sourceVpce
condizione nella policy. Se non corrisponde, la richiesta viene rifiutata.
Per utilizzare una politica come questa, sostituisci l' Account AWS ID segnaposto e l'endpoint VPC IDs con valori validi per il tuo account.
{
"Id": "example-key-1",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Enable IAM policies",
"Effect": "Allow",
"Principal": {"AWS":["111122223333
"]},
"Action": ["kms:*"],
"Resource": "*"
},
{
"Sid": "Restrict usage to my VPC endpoint",
"Effect": "Deny",
"Principal": "*",
"Action": [
"kms:Encrypt",
"kms:Decrypt",
"kms:ReEncrypt*",
"kms:GenerateDataKey*"
],
"Resource": "*",
"Condition": {
"StringNotEquals": {
"aws:sourceVpce": "vpce-1234abcdf5678c90a
"
}
}
}
]
}
Puoi anche utilizzare la chiave di condizione aws:sourceVpc
per limitare l'accesso alle tue chiavi KMS in base al VPC in cui risiede l'endpoint VPC.
I seguenti comandi di esempio della policy delle chiavi consentono i comandi che gestiscono la chiave KMS solo quando la loro provenienza è vpc-12345678
. Inoltre, consente i comandi che utilizzano la chiave KMS per le operazioni di crittografia solo quando provengono da vpc-2b2b2b2b
. Puoi usare una policy come questa se un'applicazione è in esecuzione in un VPC, ma devi utilizzare un secondo VPC separato per le funzioni di gestione.
Per utilizzare una politica come questa, sostituisci l' Account AWS ID segnaposto e l'endpoint VPC IDs con valori validi per il tuo account.
{
"Id": "example-key-2",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Allow administrative actions from vpc-12345678
",
"Effect": "Allow",
"Principal": {"AWS": "111122223333
"},
"Action": [
"kms:Create*","kms:Enable*","kms:Put*","kms:Update*",
"kms:Revoke*","kms:Disable*","kms:Delete*",
"kms:TagResource", "kms:UntagResource"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:sourceVpc": "vpc-12345678
"
}
}
},
{
"Sid": "Allow key usage from vpc-2b2b2b2b
",
"Effect": "Allow",
"Principal": {"AWS": "111122223333
"},
"Action": [
"kms:Encrypt","kms:Decrypt","kms:GenerateDataKey*"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:sourceVpc": "vpc-2b2b2b2b
"
}
}
},
{
"Sid": "Allow read actions from everywhere",
"Effect": "Allow",
"Principal": {"AWS": "111122223333
"},
"Action": [
"kms:Describe*","kms:List*","kms:Get*"
],
"Resource": "*",
}
]
}