本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
市場分佈的安全檢查清單
電子商務和市場應用程式會處理敏感資料:客戶工作階段、付款流程和進階內容。此檢查清單涵蓋具有 ElastiCache (Valkey) 快取層的 CloudFront 分佈特定的安全控制。除了 中所述的一般 CloudFront 安全最佳實務之外,請套用這些控制項設定安全存取和限制對內容的存取。
高級內容的已簽署 URLs 和 Cookie
使用簽章URLs 或簽章的 Cookie 來限制存取需要授權的內容:高級產品預覽、購買的數位商品、限時促銷內容或賣方特定的資產。
| Method | 使用時機 | 電子商務範例 |
|---|---|---|
已簽章的 URL |
限制對個別檔案的存取。共用下載連結。不支援 Cookie 的用戶端。 |
已購買數位產品的一次性下載連結。已驗證賣方對高解析度產品映像的有限時間存取。 |
已簽章的 Cookie |
提供對多個檔案的存取 (例如,高級方案中的所有資產)。避免現有內容的 URL 變更。 |
存取整個數位內容目錄的高級成員資格。跨多個頁面的訂閱者限定產品預覽。 |
組態需求:
使用 RSA 公有金鑰建立金鑰群組 (最低 2048 位元)。將私有金鑰存放在 AWS Secrets Manager 中,讓您的應用程式產生簽章。
將快取行為的限制檢視器存取設定為是,並關聯金鑰群組。
設定適合內容類型的過期時間:下載連結的分鐘數、瀏覽工作階段的小時數、訂閱存取的天數。
當您需要依 IP 範圍限制或允許萬用字元路徑時,請使用自訂政策 (非標準政策)。
如需實作的詳細資訊,請參閱 使用已簽署 URL 和已簽署 Cookie 提供私有內容。
Amazon S3 的原始存取控制 (OAC)
原始存取控制可防止使用者繞過 CloudFront 直接存取您的 Amazon S3 儲存貯體。如果沒有 OAC,則發現儲存貯體 URL 的任何人都可以存取資產,而無需通過已簽署的 URL/Cookie 強制執行、WAF 規則或地理限制。如需完整的組態步驟,請參閱 限制對 AWS 原始伺服器的存取。
- 為所有 Amazon S3 原始伺服器啟用 OAC
-
建立 OAC,並將其與分佈中的每個 Amazon S3 原始伺服器建立關聯。更新儲存貯體政策,只允許具有符合您分佈 ARN 條件的 CloudFront 服務主體 (
cloudfront.amazonaws.com)。 - 移除公開存取
-
在 Amazon Simple Storage Service 主控台中,啟用儲存貯體上的 Amazon S3 封鎖公開存取。這是 Amazon S3 設定,而不是 CloudFront 設定。儲存貯體政策僅授予 CloudFront 的存取權 — 不需要公ACLs 或政策。如需詳細資訊,請參閱《Amazon Simple Storage Service 使用者指南》中的封鎖對 Amazon S3 儲存體的公開存取。
- 使用 Amazon S3 REST API 端點
-
使用儲存貯體的 REST API 端點 (
bucket-name.s3.amazonaws.com) 而非 Amazon S3 網站端點來設定原始伺服器。OAC 僅適用於 REST API 端點。
傳輸中加密
加密請求路徑中的所有連線:檢視者到 CloudFront、CloudFront 到原始伺服器,以及應用程式到 ElastiCache 快取。
| 連線 | 設定 | 組態 |
|---|---|---|
檢視器 → CloudFront |
檢視器通訊協定政策:僅限 HTTPS |
在所有快取行為 |
CloudFront → S3 原始伺服器 |
原始通訊協定:HTTPS |
S3 REST API 端點預設支援 HTTPS。當您使用 REST API 端點和 OAC 設定原始伺服器時,CloudFront 會使用 HTTPS。 |
CloudFront → ALB 原始伺服器 |
原始通訊協定:僅限 HTTPS |
將原始通訊協定政策設定為 |
應用程式 → ElastiCache |
傳輸中加密:已啟用 |
在 ElastiCache 主控台中,在複寫群組 |
快取叢集的 VPC 安全群組
ElastiCache 叢集會在 VPC 中執行,且只能接受來自您應用程式伺服器的連線。使用安全群組鏈結來限制存取。
| 安全群組 | 傳入規則 | 理由 |
|---|---|---|
快取叢集 SG |
僅限 Application SG 的 TCP 6379 |
只有應用程式伺服器可以連線到快取。無法存取網際網路,也無法存取其他 服務。使用連接埠 6379 (預設 Valkey/Redis 連接埠) 或您設定的連接埠。 |
應用程式 SG |
僅限來自 ALB SG 的 TCP 443 |
應用程式伺服器僅接受來自 ALB 的流量。結合快取叢集 SG,這會建立鏈結:CloudFront → ALB → 應用程式 → 快取。 |
其他 VPC 強化:
在沒有網際網路閘道路由的私有子網路中部署 ElastiCache 叢集。
使用涵蓋至少 2 個可用區域的子網路群組,以獲得高可用性。
為安全群組以外的其他身分驗證層啟用 ElastiCache 驗證字符 (密碼)。
停用對 ElastiCache 叢集的公開存取 (預設,但驗證)。
其他安全控制
- 限制僅限 CloudFront 的 ALB 存取
-
新增 CloudFront 隨每個請求傳送的自訂原始伺服器標頭 (
X-Origin-Verify)。設定 ALB 或應用程式以拒絕不包含此標頭的請求。將標頭值存放在 中, AWS Secrets Manager 並定期輪換。或者,使用 CloudFront 受管字首清單,將 ALB 安全群組傳入規則限制為 CloudFront IP 範圍。 - 在 分佈 AWS WAF 上啟用
-
將 AWS WAF Web ACL 與速率限制規則建立關聯,以防止購物車濫用、登入 APIs上的登入資料填充,以及庫存湊集。針對常見威脅 (SQL Injection、XSS) 使用受管規則群組,並針對應用程式特定模式使用自訂規則。
- 合規的地理限制
-
如果您的市場在特定國家/地區營運,請啟用地理限制來封鎖來自您無權銷售或運送之區域的請求。在分佈層級套用。對於每個路徑的地理限制,請在 AWS WAF 具有 URL 路徑條件的 Web ACL 規則中使用地理比對條件。
- 存取記錄
-
啟用 CloudFront 標準記錄或即時記錄,以偵測異常存取模式:下載連結用量突然遽增、從非預期區域存取,或在 API 端點上重複失敗的身分驗證嘗試。