Amazon Config 是一項 AWS 服務,它能幫助你評估、稽核和評估 AWS 資源的配置。它提供了 AWS 資源的庫存、配置歷史記錄和配置變更通知,以實現安全和治理。
簡而言之,AWS Config 就像是你的 AWS 帳戶的「配置監理員」,它會持續監控你的 AWS 資源,記錄它們的配置狀態,並能檢查這些配置是否符合你定義的規範。
Amazon Config 的核心概念與功能
AWS Config 的主要目標是提供你 AWS 資源配置的可見性、可追蹤性和合規性。- 資源庫存 (Resource Inventory):
- 自動發現:啟用 AWS Config 後,它會自動發現你 AWS 帳戶中所有受支援的 AWS 資源(例如 EC2 實例、S3 儲存桶、IAM 角色等)。
- 配置項 (Configuration Item, CI):每個資源在特定時間點的配置狀態都會被記錄為一個「配置項」。一個配置項包含了資源的詳細資訊、配置數據、與其他資源的關係、相關的 CloudTrail 事件 ID 以及一些元數據。
- 配置歷史記錄 (Configuration History):
- AWS Config 會持續記錄資源配置的變更,形成一個完整的歷史時間軸。你可以查看任何資源在過去任何時間點的配置狀態。
- 這對於故障排除(找出是哪個配置變更導致了問題)、變更管理和安全分析至關重要。
- 配置變更通知 (Configuration Change Notifications):
- 當資源的配置發生變更時,AWS Config 可以透過 Amazon SNS 發送通知。這讓你可以實時地了解你的環境中發生的變化。
- AWS Config 規則 (AWS Config Rules):
- 定義期望狀態:這是 Config 最強大的功能之一。你可以設定規則來評估你的 AWS 資源配置是否符合你期望的狀態。
- 兩種規則類型:
- 受管規則 (Managed Rules):AWS 預先定義的規則,涵蓋了許多常見的安全最佳實踐和合規性要求(例如:「S3 儲存桶是否公開可訪問?」「EC2 實例是否有公開 IP 地址?」「CloudTrail 是否已啟用?」)。
- 自訂規則 (Custom Rules):你可以使用 AWS Lambda 函數編寫自己的規則,以滿足你組織的特定政策或複雜的合規性要求。
- 持續評估:Config 規則會持續監控相關資源的配置變更。如果資源的配置不符合規則,它會被標記為「不合規 (Noncompliant)」。
- 一致性套件 (Conformance Packs):
- 打包規則和修復措施:一致性套件是一組 AWS Config 規則和自動修復措施的集合,可以作為單一實體輕鬆部署。
- 簡化合規管理:它讓你能夠快速評估和證明你的帳戶是否符合特定的合規性標準或最佳實踐框架(例如 PCI DSS、CIS Foundations Benchmark)。
- 資料聚合器 (Aggregators):
- 允許你將多個 AWS 帳戶和多個 AWS 區域的 Config 數據(包括配置項和規則合規性狀態)集中到一個單一的視圖中。這對於大型企業和組織的集中式治理非常有用。
- 自動修復 (Remediation Actions):
- 對於不合規的資源,你可以設定自動修復動作。例如,如果一個 S3 儲存桶被偵測為公開可訪問,你可以配置一個自動修復動作,呼叫一個 AWS Systems Manager Automation 文件來將其設定為私有。
Amazon Config 與其他 AWS 服務的比較
- AWS Config vs. AWS CloudTrail:
- CloudTrail 記錄的是誰在什麼時間、從哪裡、執行了什麼操作(API 調用日誌)。它回答「誰做了什麼?」。
- Config 記錄的是 AWS 資源在特定時間點的「配置狀態」,以及這些狀態是如何隨時間變化的。它回答「我的 AWS 資源在那個時間點長什麼樣子?」以及「它的配置是如何變化的?」。
- 兩者互補:CloudTrail 的事件可以觸發 Config 記錄配置變更,Config 的日誌也可以包含相關的 CloudTrail 事件 ID。它們共同提供了 AWS 環境中活動和配置的完整記錄。
Amazon Config 的應用場景
- 安全與合規性稽核 (Security and Compliance Auditing):
- 持續監控資源配置,確保符合企業內部政策、行業標準(如 HIPAA、PCI DSS、GDPR)和法規要求。
- 自動識別和報告不合規的配置。
- 配置變更管理 (Configuration Change Management):
- 追蹤所有資源配置的歷史,了解變更的作者、時間和內容。
- 在系統出現問題時,快速回溯配置變更,找出問題根源並進行恢復。
- 營運故障排除 (Operational Troubleshooting):
- 當應用程式行為異常時,查詢 Config 歷史記錄,找出最近可能導致問題的配置更改。
- 資源庫存和資產管理 (Resource Inventory and Asset Management):
- 獲取你所有 AWS 資源的完整、最新的庫存,包括它們的配置細節和相互關係。
- 安全態勢管理 (Security Posture Management):
- 持續評估資源配置是否存在潛在的安全漏洞,例如:開放的網路埠、未加密的儲存桶、弱權限策略等。
- 成本優化 (Cost Optimization):
- 雖然不是主要功能,但透過追蹤資源類型和大小的變化,間接幫助識別可能導致成本增加的配置變更。
Amazon Config 的優勢
- 自動化與連續性:自動發現和記錄資源配置,並持續評估合規性。
- 強大的合規性工具:透過預建規則和自訂規則,以及一致性套件,大大簡化合規性管理。
- 深度可視性:提供資源配置的詳細歷史和變化,有助於洞察和故障排除。
- 全託管服務:無需管理任何基礎設施,AWS 處理所有的記錄、儲存和評估工作。
- 安全性:日誌數據會傳遞到你的 S3 儲存桶,你可以控制存取權限並啟用加密。
- 擴展性:支援跨帳戶和跨區域的數據聚合。
Amazon Config 的計費方式
Amazon Config 的計費方式是按使用量付費 (pay-as-you-go),主要根據以下三個核心維度:
- 記錄的配置項 (Configuration Items, CIs) 數量:
- 當 AWS Config 偵測到一個受支援資源的配置發生變更時,就會建立一個新的配置項。
- 費用會根據你選擇的記錄模式而有所不同:
- 持續記錄 (Continuous Recording):按每個記錄的配置項計費。當配置變更發生時立即記錄。
- 定期記錄 (Periodic Recording):按每個記錄的配置項計費,費用通常較高,因為它會在固定時間間隔(例如每 24 小時)記錄一次。
- 首次啟用 Config 時,它會對所有現有資源進行初始記錄,這也會產生配置項費用。
- AWS Config 規則評估次數 (AWS Config Rule Evaluations):
- 當 AWS Config 規則對資源的配置進行評估時,就會產生一次規則評估。
- 無論是受管規則還是自訂規則,每次評估都會計費。
- 計費會根據每月評估次數的層級而有所不同(例如,前 100,000 次評估、接下來的 400,000 次評估等,費用會遞減)。
- 一致性套件評估次數 (Conformance Pack Evaluations):
- 當一致性套件中的規則對資源進行評估時,就會產生一次一致性套件評估。
- 其計費方式與單個 Config 規則評估類似,也是根據每月評估次數的層級而有所不同。一個一致性套件包含多個規則,所以一次套件評估可能包含多個規則評估。
額外費用:
- S3 儲存和資料傳輸:AWS Config 會將你的配置歷史記錄和快照傳遞到你指定的 Amazon S3 儲存桶。S3 的儲存費用和資料傳輸費用會單獨計費。
- SNS 通知:如果啟用 Config 變更通知,Amazon SNS 的消息發送費用也會單獨計費。
- Lambda 函數:如果你使用自訂 Config 規則,則執行這些 Lambda 函數的費用會單獨計入 AWS Lambda 的費用。
AWS 通常提供免費試用層 (Free Tier),通常包括:
- 在你的 AWS 帳戶首次啟用 Config 後的 30 天內,免費提供 7,500 個配置項的記錄。
- 但請注意,規則評估和一致性套件評估通常沒有免費層,會立即開始計費。
由於具體價格會因AWS 區域、記錄的資源數量、配置變更的頻率、以及你啟用的規則和一致性套件數量而有很大差異,建議你查閱 AWS 官方網站的 Amazon Config 定價頁面 (aws.amazon.com/config/pricing/),並使用 AWS 定價計算器 來估算你的具體成本。
總而言之,Amazon Config 是一個強大的治理和稽核工具,對於希望在 AWS 雲端中維護安全、合規和良好管理的環境的組織來說,它是不可或缺的服務。


















