建立您的最佳實務 AWS 環境

為什麼要設定多帳戶 AWS 環境?

AWS 讓您能夠更快地進行實驗、創新和擴展,同時提供最靈活和最安全的雲端環境。AWS 確保您應用程式安全的一大關鍵在於 AWS 帳戶。AWS 帳戶為您的 AWS 資源提供天然的安全性、存取和計費界線,並讓您能夠實現資源獨立和隔離。例如,您帳戶之外的使用者預設無權存取您的資源。同樣,您取用的 AWS 資源成本會分配給您的帳戶。雖然您可以使用單一帳戶展開 AWS 之旅,但隨著工作負載規模和複雜性的增加,AWS 建議您設定多個帳戶。使用多帳戶環境是一項 AWS 最佳實務,可提供多種優勢:

  • 滿足各種要求的快速創新 – 您可以將 AWS 帳戶分配給公司內的不同團隊、專案或產品,確保其能快速創新,同時滿足自身的安全要求。
  • 簡化計費 – 使用多個 AWS 帳戶可協助確定哪個產品或服務系列負責 AWS 費用,從而簡化您分配 AWS 成本的方式。
  • 靈活的安全控制 – 您可以使用多個 AWS 帳戶來隔離具有特定安全要求,或需要滿足嚴格的合規性指導方針 (例如 HIPAA 或 PCI) 的工作負載或應用程式。
  • 輕鬆適應業務程序 – 您能夠以最能反映公司業務程序不同需求的方式輕鬆整理多個 AWS 帳戶,這些業務程序具有不同的營運、監管和預算要求。

最終,多帳戶 AWS 環境讓您能夠使用雲端,更快地移動並建置差異化產品和服務,同時確保您以安全、可擴展和具有彈性的方式來實現一切。但您應如何建置多帳戶 AWS 環境? 您可能會有一些問題,例如要使用什麼帳戶結構、應實作哪些政策和防護機制,或者如何設定您的稽核環境。

本指南的其餘部分將引導您了解建置安全且高效的多帳戶 AWS 環境的要素 (通常稱為 AWS 推薦的「登陸區域」)。這代表了可用於建置初始架構的最佳實務,同時在您的 AWS 工作負載隨時間增加時仍可實現靈活性。

建立多帳戶 AWS 環境的最佳實務

AWS Organizations 是建立 Well-Architected 多帳戶 AWS 環境的基礎,這是一項 AWS 服務,可讓您集中管理和管控多個帳戶。在開始之前,我們先來熟悉幾個術語。組織單位 (OU) 是 AWS Organizations 中帳戶的邏輯分組。OU 方便您將您的帳戶整理為階層,並且更容易套用管理控制。AWS Organizations 政策是您用於套用此類控制的工具。服務控制政策 (SCP) 是定義組織中帳戶可執行的 AWS 服務操作政策,如 Amazon EC2 對執行個體的執行。

首先,考慮您應建立哪些帳戶分組或 OU。您的 OU 應以功能或通用控制集為基礎,而不是反映您公司的報告結構。AWS 建議您應先考慮安全性和基礎設施。大多數企業都有集中的團隊來服務整個組織以滿足這類需求。因此,我們建議針對這些特定功能建立基礎 OU 集:

  • 基礎設施:用於共享基礎設施服務,例如聯網和 IT 服務。針對您需要的每種基礎設施服務建立帳戶。
  • 安全性:用於安全服務。針對日誌封存、安全唯讀存取、安全工具和緊急破壞式開關建立帳戶。

鑑於大多數公司對生產工作負載有不同的政策要求,基礎設施和安全性可以巢套於非生產 (SDLC) 和生產 (Prod) 的 OU。SDLC OU 中的帳戶託管非生產工作負載,因此不應具有來自其他帳戶的生產相依性。如果生命週期階段之間的 OU 政策存在差異,則 SDLC 可以拆分為多個 OU (例如開發和預生產)。Prod OU 中的帳戶託管生產工作負載。

根據您的要求,在 OU 層級套用政策來管理 Prod 和 SDLC 環境。一般來說,在 OU 層級套用政策比在個別帳戶層級套用會更好,因為其簡化了政策管理和任何潛在的疑難排解。

Product-Page-Diagram_Foundational

中央服務設置後,我們建議建立與建置或執行產品或服務直接相關的 OU。許多 AWS 客戶在建立基礎後會建置這些 OU。

  • 沙盒:持有 AWS 帳戶,個別開發人員可以使用這些帳戶來實驗 AWS 服務。確保這些帳戶可與內部網路分離,並設定程序來限制支出以防止過度使用。
  • 工作負載:包含託管面向外部的應用程式服務的 AWS 帳戶。您應在 SDLC 和 Prod 環境 (類似於基礎 OU) 下建置 OU,以便隔離和嚴格控制生產工作負載。

現在,基礎和面向生產的 OU 都已建立,我們建議根據您的特定需求新增額外的 OU 以進行維護和持續擴展。這些是基於現有 AWS 客戶實務的一些常見主題:

  • 臨時政策:持有 AWS 帳戶,您可以在其中測試提議的政策變更,然後再將其廣泛運用於組織。首先在預期 OU 的帳戶層級實作變更,然後慢慢地在其他帳戶、OU 和整個組織的其他部分進行變更。
  • 暫停:包含已關閉並等待從組織中刪除的 AWS 帳戶。將 SCP 連接到此 OU 以拒絕所有動作。如果需要還原帳戶,請確保帳戶已標記,並帶有可追溯性的詳細資訊。
  • 個別企業使用者:包含 AWS 帳戶的有限存取 OU,適用於可能需要建立與業務生產力相關的應用程式的企業使用者 (非開發人員),例如設定 S3 儲存貯體以便與合作夥伴共享報告或檔案。
  • 例外狀況:持有 AWS 帳戶,用於具有高度客製化的安全或稽核要求的商業使用案例,不同於工作負載 OU 中定義的那些要求。例如,專門為機密的新應用程式或功能建立 AWS 帳戶。在帳戶層級使用 SCP 來滿足客製化需求。考慮使用 CloudWatch Events 和 AWS Config Rules 設定偵測和回應系統。
  • 部署:包含適用於 CI/CD 部署的 AWS 帳戶。如果與工作負載 OU (Prod 和 SDLC) 中的帳戶相比,CI/CD 部署的管控和操作模型不同,則可以建立此 OU。CI/CD 的分佈有助於減少組織對由中央團隊營運的共享 CI/CD 環境的相依性。針對工作負載 OU 中應用程式的每組 SDLC/Prod AWS 帳戶,在部署 OU 下為 CI/CD 建立一個帳戶。
  • 過渡:在將現有帳戶和工作負載移至組織的標準區域之前,此區域用作臨時保存區域。這可能是因為帳戶是收購的一部分,之前由第三方管理,或者是舊組織結構中的舊帳戶。 
Product-Page-Diagram_Organizational

結論

Well-Architected 多帳戶政策可協助您在 AWS 中加速創新,同時確保滿足您的安全性和可擴展性需求。此頁面上描述的架構代表了 AWS 最佳實務,您應將其視為 AWS 旅程的起點。

Product-Page-Diagram_Organizational-Foundational-Units

若要開始使用,請參閱 AWS Organizations 入門指南,以建置您自己的多帳戶 AWS 環境。或者,您可以使用 AWS Control Tower,這樣只需按幾下即可快速設定安全的初始 AWS 環境。

其他資源