View a markdown version of this page

Cross-service verwirrte stellvertretende Prävention - AWS Backup

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.

Cross-service verwirrte stellvertretende Prävention

Das Problem des verwirrten Stellvertreters ist ein Sicherheitsproblem, bei dem eine Entität, die keine Berechtigung zur Durchführung einer Aktion hat, eine privilegiertere Entität zur Durchführung der Aktion zwingen kann. Insofern AWS kann dienststellenübergreifender Identitätswechsel zu einem verwirrten Stellvertreterproblem führen. Cross-serviceEin Identitätswechsel kann auftreten, wenn ein Dienst (der aufrufende Dienst) einen anderen Dienst (den aufgerufenen Dienst) anruft. 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 schützen können, deren Dienstprinzipale Zugriff auf Ressourcen in Ihrem Konto erhalten haben.

Wir empfehlen, in Ressourcenrichtlinien die Schlüssel aws:SourceArn und den aws:SourceAccount globalen Bedingungskontext zu verwenden, um die Berechtigungen einzuschränken, die AWS Backup einem anderen Dienst für die Ressource 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 ihn verwenden AWS Backup , um Amazon SNS-Themen in Ihrem Namen zu 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:*.

Das folgende Beispiel zeigt, wie Sie die Kontextschlüssel aws:SourceArn und die aws:SourceAccount globalen Bedingungskontextschlüssel in verwenden können AWS Backup , um das verwirrte Stellvertreterproblem zu vermeiden. Fügen Sie Ihrer KMS-Schlüsselrichtlinie die folgende Anweisung hinzu, um dem Dienstprinzipal die Ausführung backup-storage.amazonaws.com von KMS-Aktionen zu verweigern, es sei denn, die Anforderung stammt aus Ihren angegebenen Backup-Tresoren und Ihrem Konto:

{ "Sid": "Deny Backup Storage confused deputy", "Effect": "Deny", "Principal": { "Service": "backup-storage.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:RetireGrant", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringNotEquals": { "aws:SourceAccount": "123456789012" }, "ArnNotLike": { "aws:SourceArn": "arn:aws::backup:us-east-1:123456789012:backup-vault:*" } } }

Ersetzen Sie us-east-1 durch Ihre AWS-Region und 123456789012 durch Ihre AWS Konto-ID. Diese Richtlinie verweigert dem AWS Backup Speicherservice-Principal die Verwendung Ihres KMS-Schlüssels, es sei denn, die Anfrage stammt aus einem Backup-Tresor in Ihrem angegebenen Konto und Ihrer Region.