SEC09-BP01 實作安全金鑰和憑證管理 - AWS Well-Architected 架構

SEC09-BP01 實作安全金鑰和憑證管理

Transport Layer Security (TLS) 憑證可用來保護網路通訊,和建立網際網路跟私有網路中的網站、資源和工作負載的身分。

預期成果:可以在公開金鑰基礎設施 (PKI) 中佈建、部署、儲存和更新憑證的安全憑證管理系統。安全金鑰與憑證管理機制可以防止憑證私有金鑰資料外洩,也能定期自動更新憑證。它也能與其他服務整合,為工作負載內的機器資源提供安全的網路通訊和身分識別。金鑰資料絕不可供真人身分存取。

常見的反模式:

  • 在憑證部署或更新程序期間執行手動步驟。

  • 設計私有 CA 時,忽略憑證授權單位 (CA) 階層。

  • 針對公有資源使用自我簽署憑證。

建立此最佳實務的優勢:

  • 透過自動化部署和更新來簡化憑證管理

  • 鼓勵使用 TLS 憑證加密傳輸中的資料

  • 增加憑證授權機構所採取憑證動作的安全性和可稽核性

  • 在 CA 階層中不同層次的管理責任組織

未建立此最佳實務時的曝險等級:

實作指引

現代工作負載可透過使用 TLS 等 PKI 協定,來廣泛使用加密網路通訊。PKI 憑證管理可能很複雜,但自動化憑證佈建、部署和更新可以減少憑證管理相關障礙。

AWS 提供兩種管理一般用途 PKI 憑證的服務:AWS Certificate ManagerAWS Private Certificate Authority (AWS Private CA)。ACM 是客戶在公有和私有 AWS 工作負載中,用來佈建、管理和部署憑證的主要服務。ACM 則使用 AWS Private CA 發行憑證,並與許多其他 AWS 受管服務整合,以提供安全的工作負載 TLS 憑證。

AWS Private CA 可讓您建立自己的根憑證授權單位或下層憑證授權單位,並透過 API 發行 TLS 憑證。在您控制和管理 TLS 連線用戶端信任鏈時,您可以使用這些憑證類型。除了 TLS 使用案例之外,AWS Private CA 還可以用來發行憑證給 Kubernetes Pod、重要裝置產品證明、程式碼簽署,以及其他具有自訂範本的使用案例。您也可以使用 IAM Roles Anywhere 提供暫時 IAM 憑證給具有您私有 CA 發行 X.509 憑證的內部部署工作負載。

除了 ACM 和 AWS Private CA 之外,AWS IoT Core 也為 IoT 裝置提供特別支援,用來佈建、管理和部署 PKI 憑證。AWS IoT Core 提供了專門的機制,可將 IoT 裝置大規模加入您的公有金鑰基礎設施。

建立私有 CA 階層時的考量

在需要建立私有 CA 時,請務必特別留意,預先正確設計 CA 階層。建立私有 CA 階層時,最佳實務是將 CA 階層的每個層級部署到個別 AWS 帳戶。這個刻意的步驟會減少 CA 階層中每個層級的界面面積,讓您更容易察覺 CloudTrail 日誌資料的異常狀況,並在出現未經授權的帳戶存取動作時降低存取或影響範圍。根 CA 應位於自己的個別帳戶中,且只能用來發行一個或多個中繼 CA 憑證。

接著,請在不同於根 CA 帳戶的其他帳戶中建立一個或多個中繼 CA,為終端使用者、裝置或其他工作負載發行憑證。最後,請將憑證從根 CA 發行至中繼 CA,這個動作會將憑證發行給您的終端使用者或裝置。如需深入了解 CA 部署規劃和 CA 階層設計,包括恢復能力、跨區域複寫、在組織中共用 CA 等規劃,請參閱規劃您的 AWS Private CA 部署

實作步驟

  1. 確定使用案例所需的相關 AWS 服務:

    • 許多使用案例都可以使用 AWS Certificate Manager 來利用現有的 AWS 公有金鑰基礎設施。ACM 可以用於為 Web 伺服器、負載平衡器或公開信任憑證的其他用途部署 TLS 憑證。

    • 當您需要建立自己的私有憑證授權機構階層或需要存取可匯出的憑證時,考慮 AWS Private CA。然後,ACM 可用於使用 AWS Private CA 發行許多類型的終端實體憑證

    • 針對必須為嵌入式物聯網 (IoT) 裝置大規模佈建憑證的使用案例,請考慮 AWS IoT Core

  2. 盡可能實作自動憑證續約:

    • 使用 ACM 受管續約 ACM 發行的憑證以及整合式 AWS 受管服務。

  3. 建立日誌記錄和稽核記錄:

    • 啟用 CloudTrail 日誌以追蹤對持有憑證授權機構之帳戶的存取權。請考慮在 CloudTrail 中設定日誌檔案完整性驗證,以驗證日誌資料的真實性。

    • 定期產出並檢閱稽核報告,其中列出您的私有 CA 發行或撤銷的憑證。這些報告可以匯出到 S3 儲存貯體。

    • 部署私有 CA 時,您也需要建立 S3 儲存貯體來儲存憑證撤銷清單 (CRL)。如需有關根據工作負載需求設定此 S3 儲存貯體的指引,請參閱規劃憑證撤銷清單 (CRL)

資源

相關的最佳實務:

相關文件:

相關影片:

相關範例:

相關工具: