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.
Serviceübergreifende Confused-Deputy-Prävention
Das Confused-Deputy-Problem ist ein Sicherheitsproblem, bei dem eine juristische Stelle, die nicht über die Berechtigung zum Ausführen einer Aktion verfügt, eine privilegiertere juristische Stelle zwingen kann, die Aktion auszuführen. In AWS kann ein dienstübergreifendes Identitätswechsels zu einem Problem mit dem verwirrten Stellvertreter führen. Ein dienstübergreifender Identitätswechsel kann auftreten, wenn ein Dienst (der Anruf-Dienst) einen anderen Dienst anruft (den aufgerufenen Dienst). Der Anruf-Dienst kann so manipuliert werden, dass er seine Berechtigungen verwendet, um auf die Ressourcen eines anderen Kunden zu reagieren, auf die er sonst nicht zugreifen dürfte. Um dies zu verhindern, AWS bietet Tools, mit denen Sie Ihre Daten für alle Dienste mit Dienstprinzipalen schützen können, denen Zugriff auf Ressourcen in Ihrem Konto gewährt wurde.
Wir empfehlen, die Kontextschlüssel aws:SourceArn
und die aws:SourceAccount
globalen Bedingungsschlüssel in Ressourcenrichtlinien zu verwenden, um die Berechtigungen einzuschränken, AWS Backup die der Ressource einen anderen Dienst gewähren. Wenn Sie beide globalen Bedingungskontextschlüssel verwenden, müssen der aws:SourceAccount
-Wert und das Konto im aws:SourceArn
-Wert dieselbe Konto-ID verwenden, wenn sie in derselben Richtlinienanweisung verwendet werden.
Der Wert von aws:SourceArn
muss ein AWS Backup Tresor sein, wenn Sie AWS Backup Amazon SNS SNS-Themen in Ihrem Namen veröffentlichen.
Der effektivste Weg, um sich vor dem Confused-Deputy-Problem zu schützen, ist die Verwendung des globalen Bedingungskontext-Schlüssels aws:SourceArn
mit dem vollständigen ARN der Ressource. Wenn Sie den vollständigen ARN der Ressource nicht kennen oder wenn Sie mehrere Ressourcen angeben, verwenden Sie den globalen Bedingungskontext-Schlüssel aws:SourceArn
mit Platzhaltern (*
) für die unbekannten Teile des ARN. Beispiel, arn:aws::
. servicename
::123456789012
:*
Die folgende Beispielrichtlinie zeigt, wie Sie die Kontextschlüssel aws:SourceArn
und die aws:SourceAccount
globale Bedingung verwenden können, AWS Backup um das Problem des verwirrten Stellvertreters zu vermeiden. Diese Richtlinie gewährt dem Service Principal backup-storage.amazonaws.com nur dann die Möglichkeit, KMS-Aktionen durchzuführen, wenn der Service Principal im Namen des Kontos 123456789012 in den Backup-Tresoren handelt: AWS
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow root all KMS access", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:root" }, "Action": "kms:*", "Resource": "*" }, { "Sid": "Allow Backup Storage SPN backup related operations on Key", "Effect": "Deny", "Principal": { "Service": "backup-storage.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:RetireGrant", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "ForAllValues:StringNotLike": { "aws:SourceArn": ["arn:aws:backup:us-east-1:123456789012:backup-vault:*"], "aws:SourceAccount": ["123456789012"] } } } ] }