我想從 Amazon Virtual Private Cloud (Amazon VPC) 與 Amazon Simple Storage Service (Amazon S3) 儲存貯體建立私有連線。不過我不想使用驗證機制,例如 AWS Identity and Access Management (IAM) 憑證。我要如何建立這類私有連線?
簡短說明
從 Amazon Virtual Private Cloud (Amazon VPC) 存取 S3 儲存貯體時,您可以不使用驗證機制,透過私有連線存取儲存貯體。不過,您所使用的 VPC 端點務必指向 Amazon S3。
請依下列步驟操作,完成從 VPC 端點存取 S3 儲存貯體的相關設定:
1. 為 Amazon S3 建立 VPC 端點。
2. 新增允許從 VPC 端點存取的儲存貯體政策。
解決方法
開始前,您必須先建立 VPC,以便從該 VPC 存取儲存貯體。
為 Amazon S3 建立 VPC 端點
1. 開啟 Amazon VPC 主控台。
2. 使用導覽列中的「區域」選取器,將 AWS 區域設為 S3 儲存貯體的區域。
3. 在導覽窗格中,選擇端點。
4. 選擇建立端點。
5. 確認服務類別已選取「AWS 服務」。
6. 針對服務名稱,選取「s3」服務名稱和「閘道」類型。例如,美國東部 (維吉尼亞北部) 區域的服務名稱是 com.amazonaws.us-east-1.s3。
7. 針對 VPC,選取您的 VPC。
8. 針對設定路由表,先確認您要從何處存取端點,再依據相關聯的子網路選取路由表。
9. 確認政策已選取完整存取。
10. 選擇建立端點。
11. 記下 VPC 端點 ID。在稍後的步驟中,您會需要使用這個端點 ID。
新增允許從 VPC 端點存取的儲存貯體政策
更新儲存貯體政策的條件,如果請求來自您建立的 VPC 端點,便允許使用者存取 S3 儲存貯體。
若要允許這些使用者下載物件 (s3:GetObject),請使用如下所示的儲存貯體政策:
{
"Version": "2012-10-17",
"Id": "Policy1415115909152",
"Statement": [
{
"Sid": "Access-to-specific-VPCE-only",
"Principal": "*",
"Action": "s3:GetObject",
"Effect": "Allow",
"Resource": ["arn:aws:s3:::DOC-EXAMPLE-BUCKET/*"],
"Condition": {
"StringEquals": {
"aws:sourceVpce": "vpce-1a2b3c4d"
}
}
}
]
}
務必針對 aws:sourceVpce 值,輸入您先前所建立端點的 VPC 端點 ID。
重要事項: 此政策可允許您從 VPC 端點存取,但不會拒絕端點外部的所有存取請求。如果同一帳戶有使用者已完成驗證,此政策仍會允許該使用者從 VPC 端點外部存取儲存貯體。如需更嚴格的儲存貯體政策,請使用明確拒絕端點外部所有存取請求的政策。
相關資訊
Amazon S3 的閘道端點