如何重新建立 AWS Config 傳遞通道?
我刪除了 AWS Config 傳遞通道,我想重新建立該通道。
簡短說明
當您使用 AWS Config 主控台 設定 AWS Config 時,設定程序會引導您設定 AWS 資源。這些設定的資源會傳送通知到傳遞通道。AWS Config 設定包括下列資源的配置:
- Amazon Simple Storage Service (Amazon S3) 儲存貯體
- Amazon Simple Notification Service (Amazon SNS) 主題
- 建立 AWS Identity and Access Management (IAM) 角色
- 要記錄的資源類型
如果您使用 AWS Command Line Interface (AWS CLI) delete-delivery-channel 命令刪除 AWS Config 傳遞通道,則組態記錄器會關閉。如果您嘗試開啟配置記錄器,則會出現以下錯誤:
「無法啟動配置記錄器的傳遞通道。」
注意: 您無法使用 AWS Config 主控台重新建立傳遞通道。
解決方法
**注意:**如果您在執行 AWS CLI 命令時收到錯誤,請參閱對 AWS CLI 錯誤進行疑難排解。此外,請確定您使用的是最新的 AWS CLI 版本。
完成下列步驟手動重新建立 AWS Config 傳遞通道,並開啟組態記錄器。
注意: 如果您沒有刪除與已刪除 AWS Config 傳遞通道關聯的 Amazon S3 儲存貯體、S3 主題和 IAM 角色,則可以跳過這些步驟。
建立 Amazon S3 儲存貯體
請完成下列步驟:
- 在與 AWS 組態服務相同的 AWS 區域開啟 Amazon S3 主控台。
- 在導覽窗格中,選擇建立儲存貯體。
- 在儲存貯體名稱中,輸入 S3 儲存貯體的名稱,然後選擇建立儲存貯體。
- 在 S3 儲存貯體中,選擇您剛在中建立的 S3 儲存貯體。
- 選擇權限,然後選擇儲存貯體政策。
- 輸入下列範例儲存貯體政策,然後選擇儲存:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSConfigBucketPermissionsCheck", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::targetBucketName", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } }, { "Sid": "AWSConfigBucketExistenceCheck", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::targetBucketName", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } }, { "Sid": "AWSConfigBucketDelivery", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::targetBucketName/[optional] prefix/AWSLogs/sourceAccountID/Config/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control", "AWS:SourceAccount": "sourceAccountID" } } } ] }
建立 SNS 主題
請完成下列步驟:
- 在與您的 AWS Config 服務相同區域中開啟 Amazon SNS 主控台。
- 在導覽窗格中,選擇主題,然後選擇建立主題。
- 針對名稱,請輸入 SNS 主題的名稱。然後,選擇建立主題。
- 選擇建立訂閱。
- 在協定中,選擇電子郵件。
- 針對端點,輸入您要與此 SNS 主題建立關聯的電子郵件地址,然後選擇建立訂閱。
- 檢查您的訂閱確認電子郵件,然後選擇確認訂閱。
確認訂閱後,您會收到訊息 訂閱已確認!
**注意:**若要使用 SNS 主題,請確定您擁有必要的權限。
建立 IAM 角色
請完成下列步驟:
-
開啟 IAM 主控台。
-
選擇角色,然後選擇建立角色。
-
在選取受信任實體的類型中,選擇 AWS 服務。
-
在其他 AWS 服務的使用案例下,選擇設定。
-
在 選取您的使用案例中選擇 Config - 可自訂,然後選擇下一步: 授權。
-
選擇下一步,輸入角色名稱,然後選擇建立角色。
-
選取您建立的角色,選擇**建立內嵌政策,**然後選擇 JSON 索引標籤。
-
輸入以下範例政策:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:PutObjectAcl" ], "Resource": [ "arn:aws:s3:::arn:aws:s3:::targetBucketName/[optional] prefix/AWSLogs/sourceAccountID-WithoutHyphens/*" ], "Condition": { "StringLike": { "s3:x-amz-acl": "bucket-owner-full-control" } } }, { "Effect": "Allow", "Action": [ "s3:GetBucketAcl" ], "Resource": "arn:aws:s3:::targetBucketName" }, { "Effect": "Allow", "Action": "sns:Publish", "Resource": "arn:aws:sns:region:account_number:targetTopicName" } ] }
-
在政策名稱,輸入名稱,然後選擇建立政策。
建立 KMS 金鑰
最佳實務是在 AWS Config 交付給 Amazon S3 儲存貯體的物件上使用以 AWS Key Management Service (KMS) 為基礎的加密。在與 AWS Config 服務相同的區域中建立 KMS 金鑰。
請完成下列步驟:
- 開啟 AWS KMS 主控台。
- 在導覽窗格中,選擇客戶受管金鑰,然後選擇建立金鑰。
- 為金鑰類型選擇對稱以建立對稱加密 KMS 金鑰。
- 針對金鑰使用情況,選擇加密和解密選項,然後選擇下一步。
- 輸入 KMS 金鑰的別名。然後,選擇下一步。
注意: 您的別名不能以 aws/ 開頭。 - 選取可管理 KMS 金鑰的 IAM 使用者和角色。然後,選擇下一步。
- 選取可在密碼編譯作業中使用金鑰的 IAM 使用者和角色。然後,選擇下一步。
- 選擇完成以建立 KMS 金鑰。
- 從導覽窗格選擇客戶受管金鑰。然後,在客戶管理的金鑰下,選取您剛建立的金鑰。
- 在金鑰政策索引標籤下,選擇切換至政策檢視。然後,選擇編輯。
- 如果您為 AWS Config 使用自訂 IAM 角色,請輸入下列政策聲明作為其他金鑰政策聲明。然後,選擇儲存變更。
{ "Statement": [ { "Sid": "AWSConfigKMSPolicy", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Effect": "Allow", "Resource": "myKMSKeyARN", "Principal": { "AWS": [ "arn:aws:iam:account_id:role/my-config-role-name" ] } } ] }
或者,如果您對 AWS Config 使用服務連結角色 (SLR),請使用下列政策聲明來更新 KMS 金鑰政策:
{ "Statement": [ { "Sid": "AWSConfigKMSPolicy", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "myKMSKeyARN", "Condition": { "StringEquals": { "AWS:SourceAccount": "sourceAccountID" } } } ] }
建立傳遞通道
請完成下列步驟:
-
在文字編輯器中輸入下列範例範本,然後將其另存為 JSON 檔案:
{ "name": "default", "s3BucketName": "targetBucketName", "s3KeyPrefix": "Optionalprefix", "snsTopicARN": "arn:aws:sns:region:account_ID:targetTopicName", "s3KmsKeyArn": "arn:aws:kms:region:account_ID:KmsKey", "configSnapshotDeliveryProperties": { "deliveryFrequency": "Twelve_Hours" } }
**注意:**如果 S3 儲存貯體政策限制 PutObject 為特定字首而不是預設前綴,則您必須提供 s3KeyPrefix。變更 deliveryFrequency 值以符合您的使用情況。如果您選擇不啟用加密,那麼請在 JSON 檔案中省略 s3KmsKeyArn 值。
-
執行 put-delivery-channel ASW CLI 命令:
$ aws configservice put-delivery-channel --delivery-channel file://deliveryChannel.json
-
若要確認傳遞通道是否已建立,請執行 describe-delivery-channels AWS CLI 命令:
$ aws configservice describe-delivery-channels
啟動組態記錄器
請完成下列步驟:
- 開啟 AWS Config 主控台。
- 在導覽窗格中,選擇設定。
- 在記錄關閉中,選擇開啟,然後選擇繼續。或者,執行 start-configuration-recorder AWS CLI 命令:
$ aws configservice start-configuration-recorder --configuration-recorder-name configRecorderName
如需詳細資訊,請參閱管理組態記錄器和使用 AWS Config 規則評估資源。
相關資訊
相關內容
- 已提問 16 天前lg...
- 已提問 21 天前lg...
- AWS 官方已更新 22 天前
- AWS 官方已更新 7 個月前
- AWS 官方已更新 4 年前
- AWS 官方已更新 22 天前