Amazon ElastiCache Well-Architected 的鏡頭安全支柱 - Amazon ElastiCache (雷迪OSS斯)

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon ElastiCache Well-Architected 的鏡頭安全支柱

安全支柱著重於保護資訊和系統。重要主題包括資料的機密性和完整性、識別和管理誰可以透過權限為主的管理做什麼、保護系統,以及建立控制項來偵測安全事件。

SEC 1:您正在採取哪些步驟來控制對ElastiCache 數據的授權訪問?

問題層級簡介:所有 ElastiCache叢集都設計為可從 VPC、無伺服器函數 (AWS Lambda) 或容器 (Amazon 彈性容器服務) 中的 Amazon 彈性運算雲端執行個體存取。最常遇到的情況是從同一個 Amazon 虛擬私有雲 (Amazon 虛擬私有雲) 內的 Amazon 彈性運算雲端執行個體存取 ElastiCache 叢集。您必須先授權讓 Amazon EC2 執行個體存取叢集,才能從 Amazon EC2 執行個體連線至叢集。若要存取在 VPC 中執行的 ElastiCache 叢集,必須將網路輸入授與叢集。

問題難易度優點:進入叢集的網路輸入是透過 VPC 安性群組控制。安全群組會做為您 Amazon EC2 執行個體的虛擬防火牆,負責控制傳入及傳出流量。傳入規則會控制傳入至您的執行個體的流量,以及傳出規則會控制從您的執行個體傳出的流量。在的情況下 ElastiCache,啟動叢集時,它需要關聯安全性群組。這樣可確保組成叢集的所有節點都已設有傳入和傳出流量規則。此外,設定 ElastiCache 為僅在私有子網路上部署,以便只能透過 VPC 的私有網路存取這些子網路。

  • [必要] 與叢集相關聯的安全群組會控制叢集的網路輸入和存取。根據預設,安全性群組不會定義任何輸入規則,因此沒有到 ElastiCache的輸入路徑。若要啟用此功能,請在安全性群組上設定輸入規則,指定來源 IP 位址/範圍、TCP 類型流量和 ElastiCache 叢集的連接埠 (例如,Redis OSS 的預設連接埠 6379 ElastiCache )。雖然可以允許一組非常廣泛的輸入來源,例如 VPC (0.0.0.0/0) 中的所有資源,但建議在定義入站規則時盡可能精細地進行,例如僅授權在與特定安全群組關聯的 Amazon Amazon EC2 執行個體上執行之 Redis OSS 用戶端的入站存取權。

    [資源]:

  • [必要]AWS Identity and Access Management 政策可以指派給允許其存取 ElastiCache 資料的 AWS Lambda 功能。若要啟用此功能,請建立具有AWSLambdaVPCAccessExecutionRole權限的 IAM 執行角色,然後將角色指派給 AWS Lambda 函數。

    [資源]:設定 Lambda 函數以 ElastiCache 在 Amazon VPC 中存取 Amazon:教學:設定 Lambda 函數以 ElastiCache 在 Amazon VPC 中存取 Amazon

SEC 2:您的應用程序是否需要對 ElastiCache基於網絡的控件進行額外的授權?

問題層級簡介:在需要在個別用戶端層級限制或控制 ElastiCache (Redis OSS) 叢集存取的情況下,建議您透過 ElastiCache (Redis OSS) AUTH 命令進行驗證。ElastiCache (Redis OSS) 驗證權杖搭配選用的使用者和使用者群組管理,可讓 ElastiCache (Redis OSS) 在允許用戶端執行命令和存取金鑰之前先要求輸入密碼,進而改善資料平面安全性。

問題層級的好處:為了協助確保資料安全, ElastiCache (Redis OSS) 提供機制以防止未經授權存取您的資料。這包括強制執行基於角色的訪問控制(RBAC)AUTH 或客戶端使用 AUTH 令牌(密碼)在執行授權的命令 ElastiCache 之前連接到。

SEC 3:是否存在可能不小心執行命令而造成資料遺失或故障的風險?

問題層級簡介:如果錯誤執行或惡意行為者執行,有許多 Redis OSS 命令可能會對作業產生不良影響。從效能和資料安全的角度來看,這些命令可能會產生預料之外的後果。例如,開發人員可能會在開發環境中例行呼叫 FLUSHALL 命令,而由於錯誤可能會在生產系統上不小心嘗試呼叫此命令,進而導致意外的資料遺失。

問題層級的好處:從 ElastiCache (Redis OSS) 5.0.3 開始,您可以重新命名可能對工作負載造成干擾的特定命令。重新命名命令有助於防止它們在叢集上意外執行。

SEC 4:如何確保靜態數據加密 ElastiCache

問題層級簡介:雖然 ElastiCache (Redis OSS) 是記憶體內資料存放區,但可以加密任何可能在叢集標準作業中保存 (儲存) 的資料。這包括寫入 Amazon S3 的排程和手動備份,以及因同步和交換操作而儲存到磁碟儲存空間的資料。M6g 和 R6g 系列中的執行個體類型也具有永遠開啟記憶體內加密功能。

問題層級優點:ElastiCache (Redis OSS) 提供選用的靜態加密功能,以提高資料安全性。

  • [必要] 只有在建立叢集 (複製群組) 時,才能在 ElastiCache 叢集 (複製群組) 上啟用靜態加密。無法藉由修改現有叢集來開始加密靜態資料。依預設, ElastiCache 會提供和管理靜態加密中使用的金鑰。

    [資源]:

  • [最佳] 利用 Amazon EC2 執行個體類型,它會在資料位於記憶體中時加密資料 (例如 M6g 或 R6g)。盡可能考慮管理自己的靜態加密金鑰。對於更嚴格的資料安全性環境, AWS Key Management Service (KMS) 可用於自行管理客戶主金鑰 (CMK)。透過與 ElastiCache 整合 AWS Key Management Service,您可以為 ElastiCache (Redis OSS) 叢集建立、擁有和管理用於加密靜態資料的金鑰。

    [資源]:

SEC 5:您如何使 ElastiCache用加密傳輸中資料?

問題難易度簡介:一般常會要求在傳輸過程中減少資料遭到入侵的情況。這代表分散式系統元件內的資料,以及應用程式用戶端和叢集節點之間的資料。 ElastiCache (Redis OSS) 允許加密用戶端與叢集之間以及叢集節點本身之間的傳輸中資料,藉此支援此需求。M6g 和 R6g 系列中的執行個體類型也具有永遠開啟記憶體內加密功能。

問題層級的好處:Amazon ElastiCache 傳輸中加密是一項選用功能,可讓您在資料從一個位置傳輸到另一個位置時,在最容易受到攻擊的位置增加資料的安全性。

  • [必要] 只能在建立 ElastiCache (Redis OSS) 叢集 (複寫群組) 上啟用傳輸中加密。請注意,由於加密/解密資料需要進行額外處理,因此實作傳輸中加密會對效能造成一些影響。若要瞭解其影響,建議您在啟用前後對工作負載進行基準測試encryption-in-transit。

    [資源]:

SEC 6:如何限制對控制平面資源的存取權?

問題層級簡介:IAM 政策和 ARN 可針對 ElastiCache (Redis OSS) 提供精細的存取控制,進而更嚴格地控制 (Redis OSS) 叢集的建立、修改和刪除。 ElastiCache

問題層級的好處:管理 Amazon ElastiCache 資源 (例如複寫群組、節點等) 可以限制在具有 IAM 政策特定許可的 AWS 帳戶上,從而改善資源的安全性和可靠性。

SEC 7:如何偵測和回應安全事件?

問題層級簡介:ElastiCache在啟用 RBAC 的情況下進行部署時,會匯出 CloudWatch 量度以通知使用者安全性事件。這些指標有助於找出企圖進行驗證、存取金鑰,或連線的 RBAC 使用者企圖執行未獲授權之命令的失敗嘗試。

此外, AWS 產品和服務資源透過自動化部署和記錄所有動作和修改,以便日後檢閱/稽核,有助於保護整體工作負載。

問題難易度優點:藉由監控事件可讓您的組織根據您的需求、政策和程序做出回應。自動監控和回應這些安全事件,可強化您的整體安全態勢。