Dienstübergreifende Prävention verwirrter Stellvertreter in AWS - Amazon Connect

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.

Dienstübergreifende Prävention verwirrter Stellvertreter in AWS

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. 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 Verwendung der globalen Bedingungskontext-Schlüssel aws:SourceArn und aws:SourceAccount in ressourcenbasierten Richtlinien, um die Berechtigungen, die Amazon Connect einem anderen Service erteilt, auf die Ressource zu beschränken. 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 effektivste Weg, um sich vor dem Confused-Deputy-Problem zu schützen, ist die Verwendung des exakten Amazon-Ressourcennamens (ARN) der Ressource, die Sie zulassen möchten. 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::region-name::your AWS account ID:*.

Vermeidung des dienstübergreifenden Confused-Deputy-Problems für Amazon Connect Customer Profiles

Die folgenden Beispiele zeigen Richtlinien, die für Fälle gelten, in denen eine andere Person als Administrator für Amazon Connect Customer Profiles eingerichtet ist. Verwenden Sie diese Richtlinien, um das Confused-Deputy-Problem zu verhindern.

Beispielrichtlinie für Amazon Connect Customer Profiles zur Erstellung von Kundenprofil-Domains

JSON
{ "Version": "2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "profile.amazonaws.com" }, "Action": ["kms:GenerateDataKey", "kms:CreateGrant", "kms:Decrypt"], "Resource": [ "arn:aws:kms:your region-name:your AWS account ID:key/your key ARN" ], "Condition": { "ArnEquals": { "aws:SourceArn": "arn:aws:profile:your region name:your AWS account ID:domains/your domain name" }, "StringEquals": { "aws:SourceAccount": "your AWS account ID" } } } }

Beispielrichtlinie für Amazon Connect Customer Profiles zur Erstellung von Customer-Profiles-Objekttypen

JSON
{ "Version": "2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "profile.amazonaws.com" }, "Action": ["kms:GenerateDataKey", "kms:CreateGrant", "kms:Decrypt"], "Resource": [ "arn:aws:kms:your Region:your AWS account ID:key/your key ARN" ], "Condition": { " ArnEquals": { "aws:SourceArn": "arn:aws:profile:your region name:your AWS account ID:domains/your domain name/objects/your object type" }, "StringEquals": { "aws:SourceAccount": "your AWS account ID" } } } }

Beispielrichtlinie für Amazon Connect Customer Profiles zum Erstellen und Aktualisieren von Warteschlangen für unzustellbare Nachrichten

JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow to publish messages to your queue", "Effect": "Allow", "Principal": { "Service": "profile.amazonaws.com" }, "Action": "sqs:SendMessage", "Resource": "your dead-letter queue ARN", "Condition": { "StringEquals": { "aws:SourceAccount": "your AWS account ID", "aws:SourceArn": "arn:aws:profile:your region name:your AWS account ID:domains/your domain name" } } } ] }

Beispielrichtlinie für Amazon Connect Customer Profiles zum Schutz des Amazon-S3-Buckets, der im Rahmen des Identity-Resolution-Prozesses verwendet wird

{ "Sid": "Allow Amazon Connect Customer Profiles to put S3 objects to your bucket", "Effect": "Allow", "Principal": { "Service": "profile.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*", "Condition": { "StringEquals": { "aws:SourceAccount": "your AWS account ID" }, "ArnEquals": { "aws:SourceArn": "arn:aws:profile:your region name:your AWS account ID:domains/*" } } }

Vermeidung des dienstübergreifenden Confused-Deputy-Problems für Amazon Connect Voice ID

Das folgende Voice-ID-Beispiel zeigt eine Ressourcenrichtlinie, die angewendet werden muss, um das Confused-Deputy-Problem zu verhindern.

JSON
{ "Version": "2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "voiceid.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnEquals": { "aws:SourceArn": "arn:aws:voiceid:your region name:your AWS account ID:domain/your domain name" }, "StringEquals": { "aws:SourceAccount": "your AWS account ID" } } } }

Vermeidung des dienstübergreifenden Confused-Deputy-Problems für Amazon Connect Chatnachrichten-Streaming

Das folgende Amazon-Connect-Beispiel zeigt eine Ressourcenrichtlinie, die angewendet werden muss, um das Confused-Deputy-Problem zu verhindern.

JSON
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":"connect.amazonaws.com" }, "Action":"sns:Publish", "Resource":"your SNS topic ARN", "Condition":{ "StringEquals":{ "aws:SourceAccount":"your AWS account ID" }, "ArnEquals":{ "aws:SourceArn":"your Amazon Connect instance ARN" } } } ] }