Einfaches Beispiel, um den Zugriff auf Cloudfront-Dateien (S3) von einigen Benutzern, aber nicht von anderen zu beschränken

Ich fange gerade mit den Berechtigungen für AWS S3 und Cloudfront an.

Zwei Hauptfragen:

Ich möchte einigen Benutzern den Zugriff erlauben (z. B. denjenigen, die angemeldet sind), abernicht Andere. Ich gehe davon aus, dass ich ACLs anstelle einer Bucket-Richtlinie verwenden muss, da erstere anpassbarer ist, da Sie den Benutzer in der URL anhand von Abfrageparametern identifizieren können. Vor allem ist das richtig? Kann mir jemand auf die zeigenam deutlichsten englische Beschreibung, wie dies auf Datei- / Benutzer-für-Datei- / Benutzerbasis gemacht wird? Die Dokumentation zu ACL verwirrt mich.

Ich möchte den Zugriff auch so einschränken, dass nur Inhalte auf my-site.com und nicht auf your-site.com angezeigt werden. Unglücklicherweisedie S3-Dokumentationsbeispiel-Bucket-Richtlinie Dies hat keine Auswirkung auf den Zugriff für meinen Demo-Bucket (siehe Code unten, leicht angepasst aus AWS-Dokumenten). Wenn ich mich in erster Linie darauf konzentrieren möchte, den Zugriff von Benutzer zu Benutzer zuzulassen, möchte ich dann überhaupt eine Bucket-Richtlinie definieren?

Mir ist klar, dass ich nicht einmal darüber nachdenke, wie ich diese Funktion im Kontext von Cloudfront (dem Endziel) ausführen kann, aber alle Überlegungen zu Frage 1 und 2 wären sehr willkommen, und die Erwähnung von Cloudfront wäre an dieser Stelle ein Bonus.

`

{
    "Version": "2008-10-17",
     "Id":"http referer policy example",
    "Statement": [
        {
            "Sid": "AllowPublicRead",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::my-bucket/*",
            "Condition": {
                "StringLike": {
                    "aws:Referer": [
                        "https://mysite.com/*",
                        "https://www.mysite.com/*"
                    ]
                }
            }
        }
    ]
}