本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
安全
當您在 AWS 基礎設施上建置系統時,安全責任會由您和 共同承擔 AWS。此共用模型
Elasticache (Redis OSS) 會在私有 VPC 內指派網路介面。與 Elasticache (Redis OSS) 互動的 Lambda 函數也會在 VPC 中指派網路介面。所有其他資源在共用網路空間中具有 AWS 網路連線能力。具有與其他 AWS 服務互動之 VPC 介面的 Lambda 函數會使用 VPC 端點來連線至這些服務。
用於建立和驗證 JSON Web 權杖的公有和私有金鑰會在部署時間產生,並存放在 Secrets Manager 中。用於連線至 Elasticache (Redis OSS) 的密碼也會在部署時間產生並存放在 Secrets Manager 中。私有金鑰和 Elasticache (Redis OSS) 密碼無法透過任何解決方案 API 存取。
公有 API 必須透過 CloudFront 存取。解決方案會產生 API Gateway 的 API 金鑰,做為 CloudFront x-api-key
中自訂標頭 的值。CloudFront 會在發出原始伺服器請求時包含此標頭。如需其他詳細資訊,請參閱《Amazon CloudFront 開發人員指南》中的將自訂標頭新增至原始伺服器請求。
私有 APIs 設定為需要 IAM AWS 授權才能叫用。解決方案會建立具有適當許可的 ProtectedAPIGroup
IAM 使用者群組,以叫用私有 APIs。新增至此群組的 IAM 使用者有權叫用私有 APIs。
用於角色和許可的 IAM 政策,連接到解決方案建立的各種資源,僅授予執行必要任務所需的許可。
對於解決方案產生的 S3 儲存貯體、SQS 佇列和 SNS 主題等資源,會盡可能啟用靜態加密和傳輸期間加密。
監控
核心 API 堆疊包含數個 CloudWatch 警示,可在解決方案運作時監控這些警示以偵測問題。堆疊會建立 Lambda 函數錯誤和調節條件的警示,如果錯誤或調節條件在一分鐘期間內發生ALARM
,則會將警示的狀態OK
從 變更為 。
堆疊也會為每個 API Gateway 部署建立 4XX 和 5XX 狀態碼的警示。OK
ALARM
如果在一分鐘內從 API 傳回 4XX 或 5XX 狀態碼,警示會從 變更為 狀態。
這些警示會在一分鐘沒有錯誤或調節後返回 OK
狀態。
IAM 角色
AWS Identity and Access Management (IAM) 角色可讓客戶將精細存取政策和許可指派給 AWS 雲端上的服務和使用者。此解決方案會建立 IAM 角色,授予解決方案的 AWS Lambda 函數建立區域資源的存取權。
Amazon CloudFront
virtual-waiting-room-on-aws.template
CloudFormation 範本會建立等待室的核心公有和私有 APIs,也會部署公有 API 的 CloudFront 分佈。CloudFront 會快取來自公有 API 的回應,從而減少 API Gateway 和 Lambda 函數執行工作的負載。
此解決方案也有選用的範例等待室範本,可部署託管在 Amazon Simple Storage Service (Amazon S3) 儲存貯體中的簡單 Web 應用程式。為了協助減少延遲並改善安全性,Amazon CloudFront 分佈會部署原始存取身分,這是 CloudFront 使用者,提供對解決方案網站儲存貯體內容的公開存取。如需詳細資訊,請參閱《Amazon CloudFront 開發人員指南》中的使用原始存取身分限制對 Amazon S3 內容的存取。 Amazon CloudFront
安全群組
在此解決方案中建立的 VPC 安全群組旨在控制和隔離 Elasticache (Redis OSS) 的網路流量。需要與 Elasticache (Redis OSS) 通訊的 Lambda 會放置在與 Elasticache (Redis OSS) 相同的安全群組中。我們建議您檢閱安全群組,並在部署啟動並執行後視需要進一步限制存取。