用云方X S3安全地交付静态站点
你好。
这是系统解决方案部的RIN。
我已经进入了基础设施工程师的第三年,但是我终于在互联网上浏览,思考:“我对S3了解不多,所以当我遇到这篇文章时,我可能会尝试研究它('ω')。
“接下来,我想写有关如何与Cloudfront一起流式传输的文章,”但是没有文章,所以大约九年后,我想以中继格式写下有关它的文章。
总体流程
创建一个S3存储桶
↓
将HTML文件上传到存储桶
↓
创建云方向分布
↓
S3存储牌策略设置
↓
尝试访问
我实际上会尝试
创建一个S3存储桶
1。移至S3控制台后,单击“创建桶”。
②为存储桶类型指定“通用”,然后输入存储桶名称
*存储桶名必须在世界范围内唯一。
③其他设置默认情况下还可以,但是请确保将公共访问设置设置为“阻止所有公共访问”。
*这次,我们希望能够仅通过CloudFront在S3存储桶中分发文件。
③确认了这一点后,单击“创建存储桶”。
我创造了它!
文件上的文件
单击“存储库”列表屏幕>上传的存储牌名称
上传要查看的静态文件。
这次我上传了此HTML文件(index.html)。 (chatgpt)
&lt;!doctype html&gt; &lt; html lang =“ ja”&gt; &lt; head&gt; &lt; meta charset =“ utf-8”&gt; &lt; meta name =“ viewport” content =“ width =设备宽度,初始尺度= 1.0”&gt; &lt; title&gt; <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAP///yH5BAEAAAAAAAAAAAAAAAAIBRAA7" data-wp-preserve =“%3cstyle%3E%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20 font-family%3A%20Arial%2C%20sans-serif%3b%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20% 20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2 0%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2 0%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20 0%20%20%20%3A%20%23F0F0F0%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20 center%20 center%3A%3B%3B%0A 3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20% %20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3B 20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20字体大小%3A%201.2EM%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2 0%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20% 20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2 0%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%数据 - 重点=“ false”麦克风 - 持有人=“ 1”类=“ MCE-Object” &lt;/h1&lt; p&gt;我希望您如何使用CloudFront X S3;
CloudFront设置
现在,您要分发的文件已经安装,然后您将设置CloudFront。
请将屏幕移至CloudFront>创建分布。
设置项目 | 价值 |
分销选项 | 单个网站或应用 |
原点域 | 创建的S3存储桶 |
姓名 | 可选指定 |
来源访问 | 来源访问控制设置(建议) |
选择“原始访问控制设置(推荐)”以进行原始访问权限后,您将需要创建一个新的 Rigin访问控制)
创建OAC后, Origin Access控件将自动填充您刚创建的OAC。
默认情况下,其他设置还可以,因此请单击“创建分布”。
只要您可以创建这样的发行版,就可以了!
顺便说一句,什么是OAC(原始访问控制)?
一种控制从CloudFront访问S3存储桶的策略。
S3存储桶将识别CloudFront的请求,并能够阻止其他用户的访问。
OAC也出现在2022年,作为OAI的继任者(Origin Access身份)。
OAC允许比OAI更详细的策略设置,并且还支持OAI不支持的以下内容:
・Amazon S3 S3服务器端加密使用AWS KMS(SSE-KMS)(SSE-KMS)
・动态请求Amazon S3(PUT和DELETE)
S3存储策略设置
CloudFront> Distributions>按创建分布>按原始选项卡
按所选原点的“编辑”。
转到Origin访问,复制如图像中所示的策略,然后过渡到S3存储桶权限。
移至S3存储屏幕后,选择“权限”选项卡并编辑存储键策略。
粘贴您刚刚复制的政策并保存更改。
顺便说一下,复制的政策如下:
{“版本”:“ 2008-10-17”,“ ID”:“ PolicyForForCloudFrontProntProttPrivateContent”,“语句”:[{“ SID”:“允许CloudfrontServiceProntIcpal”,“ fextres”,“ ally”:“ wasler”,“ principal”,“ principal”,“ “ ARN:AWS:S3 ::: CloudFront-S3-Rin-test-Bucket/*”,“条件”:{“ String equals”:{“ AWS:aws:sourcearn”:“ Arn:aws:aws :: xxxxxxx:xxxxxx:distribution:distribution/ee49mgyo530ok}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
每个策略的含义(仅摘录至重要点)
主要的 | 指定了云方服务。 这仅允许CloudFront访问S3存储桶中的对象。 |
行动 | “ S3:getObject”表示检索对象的权限。 |
资源 | 指定存储桶中的所有对象。 |
健康)状况 | 这旨在仅允许从特定的云方分布中提出请求。 |
一旦您准备好了!
尝试访问
这次,我们没有链接自己的域,因此我们将直接访问分销域。
可以从一般分布中查看分配域名。
我能够成功地上传了我上传的HTML文件!
我还想确保无法公开访问S3,因此我还将尝试访问S3 URL。
正如预期的那样,它被访问了!