Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwenden Sie VPC Endpunkte, um den Zugriff auf Ressourcen zu AWS KMS kontrollieren
Sie können den Zugriff auf AWS KMS Ressourcen und Vorgänge steuern, wenn die Anfrage von einem Endpunkt kommt VPC oder einen VPC Endpunkt verwendet. Verwenden Sie dazu einen der folgenden globalen Bedingungsschlüssel in einer wichtigen Richtlinie oder IAMRichtlinie.
-
Verwenden Sie den
aws:sourceVpce
Bedingungsschlüssel, um den Zugriff je nach VPC Endpunkt zu gewähren oder einzuschränken. -
Verwenden Sie den
aws:sourceVpc
Bedingungsschlüssel, um den Zugriff auf der Grundlage des Hostings des VPC privaten Endpunkts zu gewähren oder einzuschränken.
Anmerkung
Seien Sie vorsichtig, wenn Sie wichtige Richtlinien und IAM Richtlinien auf der Grundlage Ihres VPC Endpunkts erstellen. Wenn eine Richtlinienerklärung verlangt, dass Anfragen von einem bestimmten VPC Endpunkt VPC oder einem bestimmten Endpunkt kommen, schlagen Anfragen von integrierten AWS Diensten, die eine AWS KMS Ressource in Ihrem Namen verwenden, möglicherweise fehl. Weitere Informationen dazu finden Sie unter Verwendung von VPC Endpunktbedingungen in Richtlinien mit Berechtigungen AWS KMS.
Außerdem ist der aws:sourceIP
Bedingungsschlüssel nicht wirksam, wenn die Anfrage von einem VPCAmazon-Endpunkt kommt. Um Anfragen auf einen VPC Endpunkt zu beschränken, verwenden Sie die aws:sourceVpc
Bedingungsschlüssel aws:sourceVpce
oder. Weitere Informationen finden Sie im AWS PrivateLink Handbuch unter Identitäts- und Zugriffsmanagement für VPC VPC Endgeräte und Endpunktdienste.
Sie können diese globalen Bedingungsschlüssel verwenden, um den Zugriff auf AWS KMS keys (KMSSchlüssel), Aliase und solche Operationen zu kontrollieren, CreateKeydie nicht von einer bestimmten Ressource abhängen.
Das folgende Beispiel für eine Schlüsselrichtlinie ermöglicht es einem Benutzer beispielsweise, einige kryptografische Operationen mit einem KMS Schlüssel nur dann durchzuführen, wenn die Anforderung den angegebenen VPC Endpunkt verwendet. Wenn ein Benutzer eine Anfrage an stellt AWS KMS, wird die VPC Endpunkt-ID in der Anfrage mit dem Wert des aws:sourceVpce
Bedingungsschlüssels in der Richtlinie verglichen. Wenn sie nicht übereinstimmen, wird die Anforderung abgelehnt.
Um eine Richtlinie wie diese zu verwenden, ersetzen Sie die AWS-Konto Platzhalter-ID und den VPC Endpunkt IDs durch gültige Werte für Ihr Konto.
{ "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
" } } } ] }
Sie können den aws:sourceVpc
Bedingungsschlüssel auch verwenden, um den Zugriff auf Ihre KMS Schlüssel zu beschränken, je nachdem, VPC in welchem VPC Endpunkt sich der Endpunkt befindet.
Das folgende Beispiel für eine Schlüsselrichtlinie erlaubt Befehle, die den KMS Schlüssel verwalten, nur dann, wenn sie stammenvpc-12345678
. Darüber hinaus sind Befehle, die den KMS Schlüssel für kryptografische Operationen verwenden, nur zulässig, wenn sie von vpc-2b2b2b2b
Sie können eine Richtlinie wie diese verwenden, wenn eine Anwendung in einer Anwendung ausgeführt wirdVPC, aber Sie verwenden eine zweite, isolierte Richtlinie VPC für Verwaltungsfunktionen.
Um eine Richtlinie wie diese zu verwenden, ersetzen Sie die AWS-Konto Platzhalter-ID und den VPC Endpunkt IDs durch gültige Werte für Ihr Konto.
{ "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 fromvpc-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": "*", } ] }