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.
Beispiel: AppStream 2.0 Anwendung Amazon S3 Bucket Policy Cross-Service Confused Deputy Prevention
Wenn Sie Daten in einem Amazon-S3-Bucket speichern, ist der Bucket möglicherweise dem Problem des verwirrten Stellvertreters ausgesetzt. Dadurch können Daten wie Elastic-Flotten, Anwendungsblocks, Setup-Skripts, Anwendungssymbole und Sitzungsskripts anfällig für böswillige Akteure werden.
Um Probleme mit verwirrten Stellvertretern zu vermeiden, können Sie die aws:SourceAccount
-Bedingung oder die aws:SourceArn
-Bedingung in der Amazon-S3-Bucket-Richtlinie für ELASTIC-FLEET-EXAMPLE-BUCKET
angeben.
Die folgenden Ressourcenrichtlinien zeigen, wie Sie das Problem des verwirrten Stellvertreters auf eine der folgenden Weisen vermeiden können:
-
Das
aws:SourceAccount
mit deiner AWS Konto-ID -
Der globale Bedingungskontextschlüssel
aws:SourceArn
AppStream 2.0 unterstützt derzeit nicht die Verhinderung verwirrter Stellvertreter für Anwendungssymbole. Der Dienst unterstützt nur VHD Dateien und Setup-Skripten. Wenn Sie versuchen, zusätzliche Bedingungen für Anwendungssymbole hinzuzufügen, werden die Symbole den Endbenutzern nicht angezeigt.
Im folgenden Beispiel erlaubt die Bucket-Richtlinie nur den Zugriff auf AppStream 2.0-Elastic-Flottenressourcen im Konto des BesitzersELASTIC_FLEET_EXAMPLE_BUCKET
.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "appstream.amazonaws.com" }, "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::
ELASTIC-FLEET-EXAMPLE-BUCKET
/vhd-folder/*", "arn:aws:s3:::ELASTIC-FLEET-EXAMPLE-BUCKET
/scripts/*" ], "Condition": { "StringEquals": { "aws:SourceAccount": "your AWS-Konto ID
" } } }, { "Sid": "AllowRetrievalPermissionsToS3AppIconsForAppStream", "Effect": "Allow", "Principal": { "Service": "appstream.amazonaws.com" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::ELASTIC-FLEET-EXAMPLE-BUCKET
/app-icons/*" } ] }
Sie können die aws:SourceArn
-Bedingung auch verwenden, um den Ressourcenzugriff für bestimmte Ressourcen zu beschränken.
Anmerkung
Wenn Sie eine Ressource nicht vollständig ARN kennen oder mehrere Ressourcen angeben möchten, verwenden Sie den aws:SourceArn
globalen Kontextbedingungsschlüssel mit Platzhaltern (*) für die unbekannten Teile von. ARN
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "appstream.amazonaws.com" }, "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::
ELASTIC-FLEET-EXAMPLE-BUCKET
/vhd-folder/*", "arn:aws:s3:::ELASTIC-FLEET-EXAMPLE-BUCKET
/scripts/*" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:{aws-partition}:appstream:{your region name
}:{your AWS account ID
}:app-block/*" } } }, { "Sid": "AllowRetrievalPermissionsToS3AppIconsForAppStream", "Effect": "Allow", "Principal": { "Service": "appstream.amazonaws.com" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::ELASTIC-FLEET-EXAMPLE-BUCKET
/app-icons/*" } ] }
Sie können die aws:SourceArn
- und aws:SourceAccount
-Bedingungen verwenden, um den Ressourcenzugriff für bestimmte Ressourcen und Konten zu beschränken.
Anmerkung
Wenn Sie nicht alle ARN Ressourcen kennen oder wenn Sie mehrere Ressourcen angeben möchten, verwenden Sie den aws:SourceArn
globalen Kontextbedingungsschlüssel mit Platzhaltern (*) für die unbekannten Teile von. ARN
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "appstream.amazonaws.com" }, "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::
ELASTIC-FLEET-EXAMPLE-BUCKET
/vhd-folder/*", "arn:aws:s3:::ELASTIC-FLEET-EXAMPLE-BUCKET
/scripts/*" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:{aws partition}:appstream:{your region name
}:{your AWS account ID
}:app-block/*" }, "StringEquals": { "aws:SourceAccount": "your AWS account ID
" } } }, { "Sid": "AllowRetrievalPermissionsToS3AppIconsForAppStream", "Effect": "Allow", "Principal": { "Service": "appstream.amazonaws.com" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::ELASTIC-FLEET-EXAMPLE-BUCKET
/app-icons/*" } ] }