Help us improve the AWS re:Post Knowledge Center by sharing your feedback in a brief survey. Your input can influence how we create and update our content to better support your AWS journey.
如何重新建立 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 主控台。
- 在導覽窗格中,選擇設定。
- 在 Recording is off (記錄關閉) 中,選擇 Turn on (開啟),然後選擇 Continue (繼續)。或者,執行 start-configuration-recorder AWS CLI 命令:
$ aws configservice start-configuration-recorder --configuration-recorder-name configRecorderName
如需詳細資訊,請參閱管理組態記錄器和使用 AWS Config 規則評估資源。
相關資訊
- 語言
- 中文 (繁體)

相關內容
- 已提問 6 個月前