Ich möchte sicherstellen, dass meine Amazon Simple Storage Service (Amazon S3)-Bucket-Richtlinie den Zugriff von Amazon QuickSight aus zulässt.
Kurzbeschreibung
Wenn Ihr Amazon-S3-Bucket eine Ablehnungsrichtlinie verwendet, überschreibt diese Richtlinie alle S3-Berechtigungen, die Sie in der Amazon QuickSight-Konsole angeben. Damit Amazon QuickSight auf den S3-Bucket zugreifen kann, fügen Sie Ihrer Ablehnungsrichtlinie die Amazon-QuickSight-Servicerolle (aws-quicksight-service-role-v0) als Ausnahme hinzu.
Behebung
1.Vergewissern Sie sich, dass Amazon QuickSight berechtigt ist, auf den S3-Bucket zuzugreifen.
2.Verwenden Sie die AWS-Befehlszeilenschnittstelle (AWS CLI) oder die AWS Identity and Access Management (IAM)-API, um die eindeutige ID für die aws-quicksight-service-role-v0-Rolle abzurufen. Die ID ist für jedes Amazon-QuickSight-Konto einzigartig. Zum Beispiel:
aws iam get-role --role-name aws-quicksight-service-role-v0 --query 'Role.RoleId' --output json
"AROAEXAMPLEID"
Hinweis: Wenn Sie beim Ausführen von Befehlen in AWS CLI eine Fehlermeldung erhalten, stellen Sie sicher, dass Sie die neueste Version von AWS CLI verwenden.
3.Öffnen Sie die Amazon-S3-Konsole.
4.Wählen Sie den Bucket aus, auf den Sie mit Amazon QuickSight zugreifen möchten.
5.Wählen Sie die Ansicht Berechtigungen.
6.Wählen Sie Bucket-Richtlinie.
7.Geben Sie eine Bucket-Richtlinie ähnlich diesem Beispiel ein. Ersetzen Sie AROAEXAMPLEID durch Ihre eindeutige ID. Wenn Sie eine Ausnahme für einen IAM-Benutzer hinzufügen möchten, ersetzen Sie AIDAEXAMPLEUSERID durch die eindeutige ID des IAM-Benutzers. Die Richtlinie des IAM-Benutzers muss auch eine Erlauben-Anweisung für den S3-Bucket enthalten. Zum Beispiel:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::examplebucketname",
"arn:aws:s3:::examplebucketname/*"
],
"Condition": {
"StringNotLike": {
"aws:userid": [
"AROAEXAMPLEID:*",
"AIDAEXAMPLEUSERID"
]
}
}
}
]
}
Diese Ablehnungsrichtlinie fügt Ausnahmen für die Amazon-QuickSight-Servicerolle und einen IAM-Benutzer hinzu.
Hinweis: Wenn Sie die Amazon-QuickSight-Servicerolle und den IAM-Benutzer löschen, werden Sie vom Bucket ausgeschlossen. Um dieses Problem zu lösen, melden Sie sich als Root-Benutzer des AWS-Kontos an und verwenden Sie dann den Befehl delete-bucket-policy, um die Bucket-Richtlinie zu löschen.
Verwandte Informationen
So beschränken Sie den Amazon S3-Bucket-Zugriff auf eine bestimmte IAM-Rolle