建立單一日誌群組的資料保護政策 - Amazon CloudWatch 日誌

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

建立單一日誌群組的資料保護政策

您可以使用 CloudWatch 記錄主控台或 AWS CLI 命令來建立資料安全防護原則,以遮罩機密資料。

您可以為每個日誌群組指派一個資料保護政策。每個資料保護政策都可以稽核多種類型的資訊。每個資料保護政策都可以包含一份稽核聲明。

主控台

若要使用主控台建立資料保護政策
  1. 在開啟 CloudWatch 主控台https://console.aws.amazon.com/cloudwatch/

  2. 在導覽窗格中依序選擇 Logs (日誌)、Log groups (日誌群組)。

  3. 選擇日誌群組的名稱。

  4. 選擇 Actions (動作)、Create data protection policy (建立資料保護政策)。

  5. 針對受管理的資料識別碼,選取您要在此記錄群組中稽核和遮罩的資料類型。您可以在選取方塊中輸入內容以尋找所需的識別符。

    我們建議您只選取與日誌資料和業務相關的資料識別符。選擇的資料類型過多可能會導致誤報。

    如需有關您可以使用受管資料識別碼來保護哪些資料類型的詳細資訊,請參閱您可以保護的資料類型

  6. (選擇性) 如果您想要使用自訂資料識別碼來稽核和遮罩其他類型的資料,請選擇 [新增自訂資料識別碼]。然後輸入資料類型的名稱和規則運算式,以便在記錄事件中搜尋該類型的資料。如需詳細資訊,請參閱自訂資料識別符

    單一資料保護政策最多可包含 10 個自訂資料識別碼。定義自訂資料識別碼的每個規則運算式必須少於 200 個字元。

  7. (選用) 選擇向其傳送稽核問題清單的一或多個服務。即使您選擇不將稽核問題清單傳送至任何這些服務,系統仍然會遮罩您選取的敏感資料類型。

  8. 選擇 Activate data protection (啟動資料保護)。

AWS CLI

若要使用建 AWS CLI 立資料安全防護原則
  1. 使用文字編輯器來建立名為 DataProtectionPolicy.json 的政策檔案。如需有關政策語法的資訊,請參閱下一節。

  2. 輸入以下命令:

    aws logs put-data-protection-policy --log-group-identifier "my-log-group" --policy-document file:///Path/DataProtectionPolicy.json --region us-west-2

API作業的 AWS CLI 資料保護原則語法

當您建立要在 AWS CLI 命令或API作業中使用的JSON資料保護原則時,該原則必須包含兩個JSON區塊:

  • 第一個區塊必須同時包含 DataIdentifer 陣列和具有 Audit 動作的 Operation 屬性。DataIdentifer 陣列會列出您要遮罩的敏感資料類型。如需所有可用選項的詳細資訊,請參閱您可以保護的資料類型

    具有 Audit 動作的 Operation 屬性為必要項目,如此才能找到敏感資料術語。此 Audit 動作必須包含 FindingsDestination 物件。您可以選擇使用此 FindingsDestination 物件,來列出要向其傳送稽核問題清單報告的一或多個目的地。如果您指定日誌群組、Amazon 資料 Firehose 串流和 S3 儲存貯體等目的地,它們必須已經存在。如需稽核問題清單報告的範例,請參閱 稽核問題清單報告

  • 第二個區塊必須同時包含 DataIdentifer 陣列和具有 Deidentify 動作的 Operation 屬性。DataIdentifer 陣列必須與政策第一個區塊中的 DataIdentifer 陣列完全一致。

    具有 Deidentify 動作的 Operation 屬性用於實際遮罩資料,其必須包含 "MaskConfig": {} 物件。 "MaskConfig": {} 物件必須是空的。

以下是遮罩電子郵件地址和美國駕照的資料保護政策範例。

{ "Name": "data-protection-policy", "Description": "test description", "Version": "2021-06-01", "Statement": [{ "Sid": "audit-policy", "DataIdentifier": [ "arn:aws:dataprotection::aws:data-identifier/EmailAddress", "arn:aws:dataprotection::aws:data-identifier/DriversLicense-US" ], "Operation": { "Audit": { "FindingsDestination": { "CloudWatchLogs": { "LogGroup": "EXISTING_LOG_GROUP_IN_YOUR_ACCOUNT," }, "Firehose": { "DeliveryStream": "EXISTING_STREAM_IN_YOUR_ACCOUNT" }, "S3": { "Bucket": "EXISTING_BUCKET" } } } } }, { "Sid": "redact-policy", "DataIdentifier": [ "arn:aws:dataprotection::aws:data-identifier/EmailAddress", "arn:aws:dataprotection::aws:data-identifier/DriversLicense-US" ], "Operation": { "Deidentify": { "MaskConfig": {} } } } ] }