2017-01-06 2 views
1

Ich habe einen S3-Bucket, der zum Hosten einer statischen Website verwendet wird. This example zeigt eine Politik, die jeden Zugriff auf die Objekte in dem angegebenen Eimer (das heißt so dass die Website öffentlich) gewährt:S3-Bucket-Richtlinie für gehostete statische Website

{ 
    "Version":"2012-10-17", 
    "Statement":[{ 
    "Sid":"PublicReadGetObject", 
    "Effect":"Allow", 
    "Principal": "*", 
    "Action":["s3:GetObject"], 
    "Resource":["arn:aws:s3:::example-bucket/*"] 
    }] 
} 

Allerdings mag ich die Website zugänglich nur bestimmte Amazon Nutzer. So folgende this documentation, gebe ich diese Benutzer in Principal:

{ 
    "Version":"2012-10-17", 
    "Statement":[{ 
    "Sid":"PublicReadGetObject", 
    "Effect":"Allow", 
    "Principal": { 
     "AWS": "arn:aws:iam::Account-ID:user/Dave" 
    }, 
    "Action":["s3:GetObject"], 
    "Resource":["arn:aws:s3:::example-bucket/*"] 
    }] 
} 

Während diese korrekt Berechtigungen für ermöglicht, welche die Ressource über die S3-Konsole zugreifen kann, führt dies zu einem 403 für jeden versuchen, die gehostete Website zuzugreifen.

Ist es möglich, Berechtigungen auf Benutzerebene zu haben, die den Zugriff auf einen gehosteten Bucket einschränken?

Antwort

2

Nein, es ist nicht möglich, Berechtigungen auf Benutzerebene auf einen statischen Website-Bucket in S3 anzuwenden. Von Permissions Required for Website Access:

:

Wenn Sie einen Bucket als Website konfigurieren, müssen Sie die Objekte, die Sie bereitstellen möchten, öffentlich lesbar machen.

Verwandte Themen