是否可以使用S3接入点作为静态网站?



我想知道是否可以使用AWS S3接入点来托管一个静态S3网站。

下面描述的S3WebsiteBucket.WebsiteURL资源工作得很好,但我需要使用接入点代替。

当我请求索引文件(URL类似https://my-access-point-0000000000.s3-accesspoint.eu-north-1.amazonaws.com/index.html)时,失败消息如下:

InvalidRequest不支持您提供的授权机制。请使用签名版本4

我的CloudFormation模板:
AWSTemplateFormatVersion: '2010-09-09'
Resources:
S3WebsiteBucket:
Type: AWS::S3::Bucket
Properties:
AccessControl: PublicRead
WebsiteConfiguration:
IndexDocument: index.html
ErrorDocument: error.html
VersioningConfiguration:
Status: Enabled
S3WebsiteBucketPolicy:
Type: AWS::S3::BucketPolicy
Properties:
PolicyDocument:
Id: AllowPublicRead
Version: 2012-10-17
Statement:
- Sid: PublicReadForGetBucketObjects
Effect: Allow
Principal: '*'
Action: 's3:GetObject'
Resource: !Join
- ''
- - 'arn:aws:s3:::'
- !Ref S3WebsiteBucket
- /*
Bucket: !Ref S3WebsiteBucket
S3AccessPoint:
Type: AWS::S3::AccessPoint
Properties:
Bucket: !Ref S3WebsiteBucket
Name: my-access-point
PublicAccessBlockConfiguration:
BlockPublicAcls: true
IgnorePublicAcls: true
BlockPublicPolicy: true
RestrictPublicBuckets: false

是否有可能使用S3接入点这样的任务在所有或它不意味着公共访问(静态网站)?如果可能的话,是否有什么我错过了-也许S3AccessPoint需要自己的IAM访问策略?

我使用S3 Access Point的主要动机是隐藏原始桶名,而不使用Route 53和自定义域。

可惜你不能这么做,因为S3网站模式只适用于桶(不适用接入点)。从文档:

Amazon S3网站端点不支持HTTPS或接入点.

最新更新