本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 VPC 中建立 Transfer Family Web 應用程式
本節說明在 VPC 中建立 Transfer Family Web 應用程式的程序。您可以在虛擬私有雲端 (VPC) 中託管 Web 應用程式的端點,以用於在 Amazon S3 儲存貯體之間傳輸資料,而無需透過公有網際網路。若要指派可以使用 Web 應用程式的使用者和群組,請參閱 將使用者或群組指派或新增至 Transfer Family Web 應用程式。
注意
若要在使用 Transfer Family Web 應用程式 VPC 端點時確保私有end-to-end資料流程,您必須實作三個額外的元件。首先,設定 Amazon S3 Control API 操作的 PrivateLink 端點,這是 Amazon S3 Access Grants API 呼叫的必要項目。其次,使用 PrivateLink Amazon S3 Gateway 端點 (適用於 VPC 內的流量) 或 Amazon S3 Interface 端點 (適用於透過 VPN 或 Direct Connect 來自內部部署網路的流量) 來設定 Amazon S3 資料存取的端點。第三,更新儲存貯體政策以僅允許來自這些 VPC 端點的流量,以鎖定您的 Amazon S3 儲存貯體存取。此組合可確保所有資料傳輸都保留在您的私有網路基礎設施中,絕不會周遊公有網際網路。
建立 Transfer Family Web 應用程式
先決條件
-
AWS IAM Identity Center 使用設定的身分提供者進行設定。請參閱 為 Transfer Family Web 應用程式設定您的身分提供者。
-
已設定 VPC 和網路元件。請參閱建立 VPC。
-
為 Amazon S3 控制操作設定的 API 端點。請參閱存取 Amazon S3 介面端點。
-
Amazon S3 (閘道或界面) 設定的 VPC 端點。請參閱 Amazon S3 的 VPC 端點類型。如果您使用的是介面端點,則必須啟用私有 DNS。如需範例,請參閱使用 介紹 Amazon S3 的私有 DNS 支援 AWS PrivateLink
。
注意
AWS IAM Identity Center 不支援 VPC 端點;所有身分驗證請求都會傳輸公有網際網路。此外,Transfer Family Web 應用程式需要網際網路存取才能載入靜態內容 (例如 JavaScript、CSS 和 HTML 檔案)。公有網際網路存取的需求與資料存取不同。您的 VPC 端點可確保透過 VPC 基礎設施路由連線。
建立 Transfer Family Web 應用程式
-
登入 AWS 管理主控台 ,並在 https://https://console.aws.amazon.com/transfer/
開啟 AWS Transfer Family 主控台。 -
在左側導覽窗格中,選擇 Web 應用程式。
-
選擇建立 Web 應用程式。對於身分驗證存取,窗格會填入如下。
-
如果您已在 中建立組織或帳戶執行個體 AWS IAM Identity Center,則會看到此訊息:您的 AWS Transfer Family 應用程式已連線至 IAM Identity Center 的帳戶執行個體。
-
如果您已經有帳戶執行個體,而且是組織執行個體的成員,您可以選擇要連線的執行個體。
-
如果您還沒有帳戶執行個體,或是組織執行個體的成員,您會看到建立帳戶執行個體的選項。
-
-
在端點組態區段中,選擇使用者存取 Web 應用程式的方式:
-
可公開存取:您的 Web 應用程式端點可透過 HTTPS 公開存取。此選項不需要任何 VPC 組態,因此設定簡單且適合廣泛公開使用的應用程式。
-
VPC 託管:您的 Web 應用程式端點託管在 Virtual Private Cloud (VPC) 中 AWS Direct Connect,透過 VPC 網路或 VPN 連接提供私有網路存取。此選項透過網路隔離提供增強的安全性,建議用於內部應用程式。
注意
您必須擁有雙堆疊 VPC 組態。如需詳細資訊,請參閱《Amazon Virtual Private Cloud 使用者指南》中的雙堆疊 VPC 組態範例。
設定 VPC 託管端點時,您需要指定:
-
VPC:選取現有的 VPC 或建立新的 VPC。建立 VPC 按鈕可供使用。
-
可用區域:選擇部署端點的可用區域。
-
子網路:選取每個所選可用區域內的子網路。
-
安全群組:選取或建立安全群組,以根據來源 IP 地址控制存取。如果未指定,則會使用 VPC 的預設安全群組。透過 VPC 主控台管理安全群組。設定 VPC 安全群組,以允許 TCP 連接埠 443 透過 HTTPS 從網路傳入流量。這是 IAM Identity Center 身分驗證和 Web 應用程式靜態內容載入的必要項目。
注意
無法為 VPC 端點自訂存取端點。若要新增自訂 URL,請使用公有端點。
-
-
建立後步驟
-
請務必為從 Web 應用程式端點存取的所有儲存貯體設定跨來源資源共用 (CORS) 政策。請參閱 跨來源資源共用 (CORS) 政策。
-
更新您的儲存貯體政策,僅允許透過 VPC 端點源自 VPC 的流量。請參閱 限制特定 VPC 端點的存取。
-
指派或新增使用者或群組至 Transfer Family Web 應用程式。請參閱 將使用者或群組指派或新增至 Transfer Family Web 應用程式。
跨來源資源共用 (CORS) 政策
您必須為 Web 應用程式使用的所有儲存貯體設定跨來源資源共用 (CORS)。如需 CORS 的詳細資訊,請參閱「為您的儲存貯體設定跨來源資源共用 (CORS)」。
重要
使用下列範例政策之前,請將允許原始伺服器取代為您的存取端點。否則,最終使用者在嘗試存取 Web 應用程式上的位置時,會收到錯誤。
範例政策:
[ { "AllowedHeaders": [ "*" ], "AllowedMethods": [ "GET", "PUT", "POST", "DELETE", "HEAD" ], "AllowedOrigins": [ "https://vpce-1234567-example.vpce-mq.transfer-webapp.us-east-1.on.aws" ], "ExposeHeaders": [ "last-modified", "content-length", "etag", "x-amz-version-id", "content-type", "x-amz-request-id", "x-amz-id-2", "date", "x-amz-cf-id", "x-amz-storage-class", "access-control-expose-headers" ], "MaxAgeSeconds": 3000 } ]
限制特定 VPC 端點的存取
下列 Amazon S3 儲存貯體政策範例限制只能從 ID 為 vpce-1a2b3c4d 的 VPC 端點存取特定儲存貯體 amzn-s3-demo-bucket。如果未使用指定的端點,政策會拒絕所有對儲存貯體的存取。aws:SourceVpce 條件會指定端點。aws:SourceVpce 條件不需要 VPC 端點資源的 ARN,其只需要 VPC 端點 ID。如需更新儲存貯體政策以僅允許來自 VPC 的流量的詳細資訊,請參閱使用儲存貯體政策控制來自 VPC 端點的存取。如需在政策中使用條件的詳細資訊,請參閱使用條件索引鍵的儲存貯體政策範例。作為套用此政策的先決條件,您應該建立 Amazon S3 VPC 端點。
重要
使用下列範例政策之前,請以適合您使用案例的適當值取代 VPC 端點 ID。否則,您將無法存取儲存貯體。
{ "Version":"2012-10-17", "Id": "Policy1415115909152", "Statement": [ { "Sid": "Access-to-specific-VPCE-only", "Principal": "*", "Action": "s3:*", "Effect": "Deny", "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/*"], "Condition": { "StringNotEquals": { "aws:SourceVpce": "vpce-1a2b3c4d" } } } ] }