Ich habe eine nicht authentifizierte Rolle unter Amazon Cognito Identity Pool eingerichtet. Mein Ziel ist, dass Gastbenutzer meiner mobilen App Debug-Protokolle (kleine Textdateien) in meinen S3-Bucket hochladen können, damit ich Probleme beheben kann. Ich bemerke, dass ich "Zugriff verweigert" von S3 erhalten würde, wenn ich meine S3-Bucket-Berechtigung nicht ändere. Wenn ich das Hinzufügen von "Jeder" zum Hochladen / Löschen zulassen möchte, ist der Upload der Datei erfolgreich. Meine Sorge ist, dass jemand dann große Dateien in meinen Bucket hochladen und ein Sicherheitsproblem verursachen könnte. Was ist die empfohlene Konfiguration für meine Bedürfnisse oben? Ich bin ein Neuling für S3 und Cognito.
Ich verwende Amazon AWS SDK für iOS, aber ich denke, diese Frage ist plattformneutral.
Bearbeiten: Meine Politik ist wie folgt:
%Vor%Sie müssen die S3-Bucket-Berechtigung nicht ändern, sondern die IAM-Rolle, die Ihrem Identitätspool zugeordnet ist. Versuchen Sie Folgendes:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["s3:PutObject"],
"Resource": ["arn:aws:s3:::MYBUCKET/*"]
}
]
}
durch Ihren Bucket-Namen Vielleicht möchten Sie die Berechtigungen weiter einschränken, einschließlich MYBUCKET
, um Ihre Benutzer zu partitionieren, aber die oben genannte Richtlinie wird Sie dazu bringen, mit der Arbeit zu beginnen.
Tags und Links amazon-s3 amazon-cognito