使用 CloudTrail 主控台建立追蹤 - AWS CloudTrail

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

使用 CloudTrail 主控台建立追蹤

最佳實務是建立套用至所有 AWS 區域的追蹤。當您在 CloudTrail 主控台中建立線索時,此為預設設定。當線索套用至所有區域時, 會從您正在處理的AWS 分割區中所有區域 CloudTrail ,將日誌檔案傳遞至您指定的 S3 儲存貯體。建立追蹤之後, AWS CloudTrail 會自動開始記錄您指定的事件。

注意

建立追蹤之後,您可以設定其他 AWS 服務 以進一步分析 CloudTrail 日誌中收集的事件資料,並對其採取行動。如需詳細資訊,請參閱AWS 服務與 CloudTrail 日誌的整合

在主控台中建立追蹤

使用下列程序建立多區域追蹤。若要記錄單一區域內的事件 (不建議),請使用 AWS CLI

使用 建立 CloudTrail 追蹤 AWS Management Console
  1. 登入 AWS Management Console 並在 開啟 CloudTrail 主控台https://console.aws.amazon.com/cloudtrail/

  2. 在 CloudTrail 服務首頁、追蹤頁面或儀表板頁面的追蹤區段中,選擇建立追蹤

  3. Create Trail (建立追蹤) 頁面的 Trail name (追蹤名稱) 中,輸入追蹤的名稱。如需詳細資訊,請參閱 CloudTrail 資源、S3 儲存貯體和KMS金鑰的命名需求

  4. 如果這是 AWS Organizations 組織追蹤,您可以為組織中的所有帳戶啟用追蹤。若要查看此選項,您必須使用管理或委派的管理員帳戶中的使用者或角色登入到主控台。若要成功建立組織追蹤,請確保該使用者或角色具備足夠許可。如需詳細資訊,請參閱 建立組織追蹤

  5. 針對 Storage location (儲存位置),選擇 Create a new S3 bucket (建立新 S3 儲存貯體),以建立儲存貯體。當您建立儲存貯體時, CloudTrail 會建立和套用所需的儲存貯體政策。如果您選擇建立新的 S3 儲存貯體,您的IAM政策需要包含s3:PutEncryptionConfiguration動作的許可,因為預設會為儲存貯體啟用伺服器端加密。

    注意

    如果您選擇使用現有的 S3 儲存貯體,請在追蹤日誌儲存貯體名稱中指定一個儲存貯體,或選擇瀏覽以便在您自己的帳戶中選擇一個儲存貯體。如果想要在其他帳戶中使用儲存貯體,您需要指定儲存貯體名稱。儲存貯體政策必須授予寫入它的 CloudTrail 許可。如需手動編輯儲存貯體政策的資訊,請參閱「Amazon S3 存儲桶政策 CloudTrail」。

    若要更輕鬆地尋找日誌,請在現有的儲存貯體中建立新的資料夾 (也稱為字首),以存放您的 CloudTrail 日誌。在字首中輸入字首。

  6. 對於日誌檔案 SSE-KMS 加密,如果您想要使用 - 加密而非 SSE-KMSSSE-S3 加密來加密日誌檔案,請選擇已啟用。預設為啟用。如果您未啟用 SSE- KMS加密,您的日誌會使用 SSE-S3 加密進行加密。如需 SSE-KMS 加密的詳細資訊,請參閱搭配 AWS Key Management Service (SSE-KMS) 使用伺服器端加密。如需 SSE-S3 加密的詳細資訊,請參閱搭配使用伺服器端加密與 Amazon S3-Managed加密金鑰 (SSE-S3)

    如果您啟用 SSE- KMS加密,請選擇新的現有的 AWS KMS key。在AWS KMS 別名中,以 格式指定別名alias/MyAliasName。如需詳細資訊,請參閱 更新資源以搭配主控台使用您的KMS金鑰。 CloudTrail 也支援 AWS KMS 多區域金鑰。如需多區域金鑰的詳細資訊,請參閱《AWS Key Management Service 開發人員指南》中的使用多區域金鑰

    注意

    您也可以輸入來自另一個帳戶的金鑰ARN的 。如需詳細資訊,請參閱更新資源以搭配主控台使用您的KMS金鑰。金鑰政策必須允許 CloudTrail 使用金鑰來加密您的日誌檔案,並允許您指定的使用者以未加密的形式讀取日誌檔案。如需手動編輯金鑰政策的資訊,請參閱「設定 的 AWS KMS 金鑰政策 CloudTrail」。

  7. 其他設定下,設定下列項目。

    1. 針對 Log file validation (日誌檔案驗證),選擇 Enabled (啟用) 將日誌摘要交付到您的 S3 儲存貯體。您可以使用摘要檔案來驗證您的日誌檔案在 CloudTrail 交付後並未變更。如需詳細資訊,請參閱驗證 CloudTrail 記錄檔完整性

    2. 對於SNS通知交付,請選擇啟用,在每次日誌交付至您的儲存貯體時收到通知。 會將多個事件 CloudTrail 儲存在日誌檔案中。 會為每個日誌檔案傳送SNS通知,而不是每個事件。如需詳細資訊,請參閱設定 Amazon SNS 通知 CloudTrail

      如果您啟用SNS通知,請針對建立新SNS主題,選擇新增以建立主題,或選擇現有以使用現有主題。如果您要建立適用於所有區域的追蹤,所有區域的日誌檔案交付SNS通知會傳送至您建立的單一SNS主題。

      如果您選擇新增,請為您 CloudTrail 指定新主題的名稱,也可以輸入名稱。如果您選擇現有,請從下拉式清單中選擇SNS主題。您也可以從其他區域或具有適當許可的帳戶輸入主題ARN的 。如需詳細資訊,請參閱Amazon SNS 主題政策 CloudTrail

      如果您建立主題,則必須訂閱該主題,以便在日誌檔案交付時收到通知。您可以從 Amazon SNS主控台訂閱。由於通知的頻率,我們建議您設定訂閱使用 Amazon SQS佇列以程式設計方式處理通知。如需詳細資訊,請參閱《Amazon Simple Notification Service 開發人員指南SNS》中的 Amazon 入門。

  8. 或者,選擇在 CloudWatch 日誌中啟用,設定 CloudTrail 將日誌檔案傳送至CloudWatch 日誌。如需詳細資訊,請參閱將事件傳送至 CloudWatch 記錄檔

    1. 如果您啟用與 CloudWatch 日誌的整合,請選擇新增以建立新的日誌群組,或選擇現有以使用現有的日誌群組。如果您選擇新增,請為您 CloudTrail 指定新日誌群組的名稱,或者您可以輸入名稱。

    2. 如果選擇 Existing (現有),請從下拉式清單中選擇日誌群組。

    3. 選擇新增,為將日誌傳送至 CloudWatch 日誌的許可建立新的IAM角色。選擇現有,從下拉式清單中選擇現有IAM角色。新角色或現有角色的政策陳述式會在您展開政策文件時顯示。如需有關此角色的詳細資訊,請參閱 使用 CloudWatch 記錄進行監視 CloudTrail 的角色原則文件

      注意
      • 當您設定線索時,您可以選擇屬於另一個帳戶的 S3 儲存貯體和SNS主題。不過,如果您 CloudTrail 想要將事件交付至 CloudWatch Logs 日誌群組,您必須選擇目前帳戶中存在的日誌群組。

      • 只有 管理帳戶可以使用 主控台為組織追蹤設定 CloudWatch Logs 日誌群組。委派的管理員可以使用 AWS CLI 或 CloudTrail CreateTrailUpdateTrailAPI操作來設定 CloudWatch Logs 日誌群組。

  9. 對於標籤,您最多可以新增 50 個標籤金鑰對,以協助您識別、排序和控制對追蹤的存取。標籤可協助您識別 CloudTrail 追蹤和包含 CloudTrail 日誌檔案的 Amazon S3 儲存貯體。然後,您可以使用資源群組來管理 CloudTrail 資源。如需詳細資訊,請參閱 AWS Resource Groups標籤

  10. 選擇日誌事件頁面上,選擇您要記錄的事件類型。對於 Management events (管理事件),請執行下列動作。

    1. 對於API活動,選擇您希望追蹤記錄讀取事件、寫入事件或兩者。如需詳細資訊,請參閱管理事件

    2. 選擇排除 AWS KMS 事件以篩選 AWS Key Management Service (AWS KMS) 追蹤中的事件。預設設定是包含所有 AWS KMS 事件。

      只有在追蹤上記錄管理 AWS KMS 事件時,才提供記錄或排除事件的選項。如果您選擇不記錄管理事件,則不會記錄 AWS KMS 事件,而且您無法變更 AWS KMS 事件記錄設定。

      AWS KMS EncryptDecrypt和 等動作GenerateDataKey通常會產生大量 (超過 99%) 的事件。這些動作現在會記錄為 Read (讀取) 事件。低容量的相關 AWS KMS 動作,例如 DisableDeleteScheduleKey(通常少於 AWS KMS 事件磁碟區 0.5%) 會記錄為寫入事件。

      若要排除大量事件Decrypt,例如 Encrypt、 和 GenerateDataKey,但仍記錄相關事件,例如 DisableDeleteScheduleKey,請選擇記錄寫入管理事件,並清除排除 AWS KMS 事件的核取方塊。

    3. 選擇排除 Amazon RDS Data API事件,將 Amazon Relational Database Service Data API事件篩選出您的追蹤。預設設定為包含所有 Amazon RDS Data API事件。如需 Amazon RDS Data API事件的詳細資訊,請參閱《Amazon Aurora RDS使用者指南》中的使用 記錄資料API呼叫 AWS CloudTrail

  11. 若要記錄資料事件,請選擇資料事件。記錄資料事件需支付額外的費用。如需詳細資訊,請參閱 AWS CloudTrail 定價

  12. 重要

    依預設,透過使用進階事件選取器執行步驟 12-16,可設定資料事件。進階事件選取器可讓您設定更多資源類型,並對追蹤擷取的資料事件提供精細的控制。如果您選擇使用基本事件選取器,請完成 使用基本事件選取器執行資料事件設定 中的步驟,然後返回至此程序的步驟 17。

    針對資源類型,選擇您要記錄資料事件的資源類型。如需可用資源類型的詳細資訊,請參閱 資料事件

  13. 選擇日誌選取器範本。 CloudTrail 包含預先定義的範本,可記錄資源類型的所有資料事件。若要建立自訂記錄選取器範本,請選擇 Custom (自訂)。

    注意

    選擇 S3 儲存貯體的預先定義範本,可針對目前在您 AWS 帳戶中的所有儲存貯體,以及您在建立追蹤後建立的任何儲存貯體,啟用資料事件記錄。它也可以記錄您 AWS 帳戶中任何IAM身分執行的資料事件活動,即使該活動是在屬於另一個 AWS 帳戶的儲存貯體上執行。

    如果追蹤僅套用至一個區域,選取預先定義的記錄所有 S3 儲存貯體的範本可針對下列儲存貯體啟用記錄資料事件:與您追蹤相同之區域中的所有儲存貯體,以及您稍後在該區域中建立的任何儲存貯體。它不會記錄您 AWS 帳戶中其他區域中 Amazon S3 儲存貯體的資料事件。

    如果您要為所有區域建立線索,請選擇 Lambda 函數的預先定義範本,以啟用 AWS 目前帳戶中所有函數的資料事件記錄,以及您在建立線索後可能在任何區域中建立的任何 Lambda 函數。如果您要為單一區域建立追蹤 (使用 完成 AWS CLI),此選擇會啟用 AWS 帳戶中目前該區域中所有函數的資料事件記錄,以及在您完成建立追蹤後,您可能在該區域中建立的任何 Lambda 函數。並不會為其他區域中所建立之 Lambda 函數啟用記錄資料事件。

    記錄所有函數的資料事件也可以記錄您 AWS 帳戶中任何IAM身分執行的資料事件活動,即使該活動是在屬於另一個 AWS 帳戶的函數上執行。

  14. (選用) 在選取器名稱中,輸入用於識別選取器的名稱。選取器名稱是進階事件選擇器的描述性名稱,例如「僅為兩個 S3 儲存貯體記錄資料事件」。選擇器名稱在進階事件選擇器Name中列為 ,如果您展開JSON檢視,則可檢視。

  15. 如果您選取自訂,在進階事件選取器中會根據進階事件選取器欄位的值來建置表達式。

    1. 從下列欄位選取。

      • readOnly - readOnly可以設定為等於 true或 的值false。唯讀資料事件是不會變更資源狀態的事件,例如 Get*Describe* 事件. 寫入事件新增、變更或刪除資源、屬性或成品,例如 Put*Delete*Write* 事件。若要同時記錄 readwrite 事件,請勿新增 readOnly 選擇器。

      • eventName-eventName可以使用任何運算子。您可以使用它來包含或排除記錄到 的任何資料事件 CloudTrail,例如 PutBucketGetItemGetSnapshotBlock

      • resources.ARN - 您可以搭配 使用任何運算子resources.ARN,但如果您使用等於不等於,則值必須完全符合您在範本中指定之類型ARN的有效資源的 ,作為 的值resources.type。如需詳細資訊,請參閱依 篩選資料事件 resources.ARN

        注意

        您無法使用 resources.ARN 欄位來篩選沒有 的資源類型ARNs。

      如需資料事件資源ARN格式的詳細資訊,請參閱AWS Identity and Access Management 《 使用者指南》中的動作、資源和條件索引鍵

    2. 針對每個欄位,選擇 + 條件,視需要新增任意數目的條件,所有條件最多可指定 500 個值。例如,若要將兩個 S3 儲存貯體的資料事件從記錄於事件資料存放區的資料事件中排除,您可以將 欄位設定為 資源。ARN,將 的運算子設定為 ,不以 開頭,然後貼到您不想記錄事件ARN的 S3 儲存貯體中。

      若要新增第二個 S3 儲存貯體,請選擇 + 條件,然後重複上述指示,在 中貼上ARN或瀏覽不同的儲存貯體。

      如需如何 CloudTrail 評估多個條件的詳細資訊,請參閱 如何 CloudTrail 評估 欄位的多個條件

      注意

      對於事件資料存放區上的所有選取器,您最多可以有 500 個值。這包括一個選擇器的多個值的陣列,如 eventName。如果所有選擇器都有單個值,則最多可以有 500 個條件新增至選擇器。

    3. 選擇 + 欄位以根據需要新增其他欄位。為避免發生錯誤,請勿為欄位設定衝突或重複的值。例如,請勿將一個選擇器ARN中的 指定為等於 值,然後指定 ARN不等於另一個選擇器中的相同值。

  16. 若要新增要記錄資料事件的其他資源類型,請選擇新增資料事件類型。重複步驟 12 到此步驟來設定資源類型的進階事件選取器。

  17. 若要記錄網路活動事件,請選擇網路活動事件。網路活動事件可讓VPC端點擁有者記錄 AWS API從私有VPC端點VPC到 的呼叫 AWS 服務。記錄網路活動事件需支付額外費用。如需詳細資訊,請參閱 AWS CloudTrail 定價

    注意

    網路活動事件處於 的預覽版本, CloudTrail 可能會有所變更。

    若要記錄網路活動事件,請執行下列動作:

    1. 網路活動事件來源中,選擇網路活動事件的來源。

    2. 日誌選取器範本中,選擇範本。您可以選擇記錄所有網路活動事件、記錄所有網路活動存取遭拒的事件,或選擇自訂來建置自訂日誌選擇器,以篩選多個欄位,例如 eventNamevpcEndpointId

    3. (選用) 輸入名稱以識別選擇器。在進階事件選取器中,選取器名稱會列為名稱,如果您展開JSON檢視,則可檢視。

    4. 進階事件選擇器中,選擇欄位運算子的值來建置表達式。如果您使用預先定義的日誌範本,則可略過此步驟。

      1. 若要排除或包含網路活動事件,您可以在 主控台中選擇下列欄位。

        • eventName – 您可以將任何運算子與 搭配使用eventName。您可以使用它來包含或排除任何事件,例如 CreateKey

        • errorCode – 您可以使用它來篩選錯誤碼。目前唯一支援的errorCodeVpceAccessDenied

        • vpcEndpointId – 識別操作通過的VPC端點。您可以搭配 使用任何運算子vpcEndpointId

      2. 針對每個欄位,選擇 + 條件,視需要新增任意數目的條件,所有條件最多可指定 500 個值。

      3. 選擇 + 欄位以根據需要新增其他欄位。為避免發生錯誤,請勿為欄位設定衝突或重複的值。

    5. 若要新增要記錄網路活動事件的其他事件來源,請選擇新增網路活動事件選擇器

    6. 或者,展開JSON檢視,將進階事件選取器視為JSON區塊。

  18. 如果您想要追蹤記錄 CloudTrail Insights 事件,請選擇 Insights 事件。

    Event type (事件類型) 中,選取 Insights 事件。您必須記錄寫入管理事件,以記錄 Insights 事件的API呼叫率。您必須記錄讀取寫入管理事件,以記錄 Insights 事件的API錯誤率

    CloudTrail Insights 會分析異常活動的管理事件,並在偵測到異常時記錄事件。依預設,追蹤不會記錄 Insights 事件。如需 Insights 事件的詳細資訊,請參閱記錄 Insights 事件。記錄 Insights 事件需支付額外費用。如需 CloudTrail 定價,請參閱AWS CloudTrail 定價

    Insights 事件會交付至名為/CloudTrail-Insight相同 S3 儲存貯體的不同資料夾,該資料夾在追蹤詳細資訊頁面的儲存位置區域中指定。 CloudTrail 會為您建立新的字首。例如,如果您目前的目的地 S3 儲存貯體名為 amzn-s3-demo-bucket/AWSLogs/CloudTrail/,則具有新前綴的 S3 儲存貯體名稱會被命名為 amzn-s3-demo-bucket/AWSLogs/CloudTrail-Insight/

  19. 當您完成選擇要記錄的事件類型時,請選擇 Next (下一頁)。

  20. Review and create (檢閱和建立) 頁面上,檢閱您的選擇。選擇區段中的 Edit (編輯),以變更該區段中顯示的追蹤設定。當您準備好建立追蹤時,請選擇 Create trail (建立追蹤)。

  21. 新的追蹤會出現在 Trails (追蹤) 頁面上。大約 5 分鐘內, 會 CloudTrail 發佈日誌檔案,顯示在您帳戶中進行的 AWS API呼叫。您可以在所指定之 S3 儲存貯體中看到日誌檔案。如果您已啟用 Insights 事件記錄,並偵測到異常活動,則 可能需要最多 36 小時 CloudTrail 才能交付第一個 Insights 事件。

    注意

    CloudTrail 通常在API呼叫後平均約 5 分鐘內交付日誌。此時間無法保證。如需詳細資訊,請參閱 AWS CloudTrail 服務水準協議

    如果您設定錯誤的線索 (例如,S3 儲存貯體無法連線), CloudTrail 會嘗試將日誌檔案重新交付至 S3 儲存貯體 30 天,而且這些 attempted-to-deliver事件需支付標準 CloudTrail 費用。若要避免支付追蹤設定錯誤費用,您需要刪除追蹤。

使用基本事件選取器執行資料事件設定

您可以使用進階事件選取器來設定所有資料事件資源類型以及網路活動事件 (預覽)。進階事件選取器可讓您建立精細選取器,以僅記錄感興趣的事件。

如果您使用基本事件選取器來記錄資料事件,則僅限於記錄 Amazon S3 儲存貯體、 AWS Lambda 函數和 Amazon DynamoDB 資料表的資料事件。您無法使用基本事件選取器篩選 eventName 欄位。您也無法記錄網路活動事件

追蹤上資料事件的基本事件選取器

使用以下程序,透過基本事件選取器執行資料事件設定。

若要使用基本事件選取器執行資料事件設定
  1. 事件中,選擇資料事件以記錄資料事件。記錄資料事件需支付額外的費用。如需詳細資訊,請參閱 AWS CloudTrail 定價

  2. 對於 Amazon S3 儲存貯體:

    1. 對於 Data source (資料來源),請選擇 S3

    2. 您可以選取記錄所有目前和未來的 S3 儲存貯體,也可以指定個別儲存貯體或函數。依預設,會記錄所有目前和未來 S3 儲存貯體的資料事件。

      注意

      保留預設 所有目前和未來的 S3 儲存貯體選項,可啟用您 AWS 帳戶中目前所有儲存貯體的資料事件記錄,以及您在完成建立追蹤後建立的任何儲存貯體的資料事件記錄。它也可以記錄您 AWS 帳戶中任何IAM身分執行的資料事件活動,即使該活動是在屬於另一個 AWS 帳戶的儲存貯體上執行。

      如果您要為單一區域建立追蹤 (使用 完成 AWS CLI),請選擇所有目前和未來的 S3 儲存貯體,以啟用與追蹤相同區域中的所有儲存貯體的資料事件記錄,以及稍後在該區域中建立的任何儲存貯體。它不會記錄您 AWS 帳戶中其他區域中 Amazon S3 儲存貯體的資料事件。

    3. 如果您保留預設值,所有目前和未來的 S3 儲存貯體,選擇記錄事件、事件,或兩者。

    4. 若要選擇個別儲存貯體,請清空所有目前和未來的 S3 儲存貯體核取方塊。在個別儲存貯體選擇中,瀏覽要記錄資料事件的儲存貯體。透過輸入您想要的儲存貯體前綴來查找特定的儲存貯體。您可以在此視窗中選取多個儲存貯體。選擇新增儲存貯體以記錄更多儲存貯體的資料事件。選擇記錄 Read (讀取) 事件 (例如 GetObject)、Write (寫) 事件 (例如 PutObject) 還是兩者。

      此設定的優先順序高於您針對個別儲存貯體所設定的個別設定。例如,如果您指定記錄所有 S3 儲存貯體之 Read (讀取) 事件,然後選擇新增要記錄資料事件的特定儲存貯體,則您新增的儲存貯體會直接選取 Read (讀取)。您無法清除選取項目。您只能設定 Write (寫入) 的選項。

      若要從記錄中移除儲存貯體,請選擇 X

  3. 若要新增要記錄資料事件的其他資源類型,請選擇新增資料事件類型

  4. 針對 Lambda 函數:

    1. 針對資料事件來源中,選擇 Lambda

    2. Lambda 函數中,選擇所有區域以記錄所有 Lambda 函數,或選擇輸入函數以ARN記錄特定函數上的資料事件。

      若要記錄您 AWS 帳戶中所有 Lambda 函數的資料事件,請選取記錄所有目前和未來的函數。此設定的優先順序高於您針對個別函數所設定的個別設定。皆會記錄所有函數,縱使未顯示全部的函數。

      注意

      如果您要建立所有區域的追蹤,則此選取項目可針對下列函數啟用記錄資料事件:目前在您 AWS 帳戶中的所有函數,以及在您完成建立追蹤之後可能在任何區域中建立的任何 Lambda 函數。如果您要為單一區域建立追蹤 (使用 完成 AWS CLI),此選擇會啟用 AWS 帳戶中目前該區域中所有函數的資料事件記錄,以及在您完成建立追蹤後,您可能在該區域中建立的任何 Lambda 函數。並不會為其他區域中所建立之 Lambda 函數啟用記錄資料事件。

      記錄所有函數的資料事件也可以記錄您 AWS 帳戶中任何IAM身分執行的資料事件活動,即使該活動是在屬於另一個 AWS 帳戶的函數上執行。

    3. 如果您選擇輸入函數為 ARN,請輸入 Lambda 函數ARN的 。

      注意

      如果您的帳戶中有超過 15,000 個 Lambda 函數,則在建立追蹤時,您無法在 CloudTrail 主控台中檢視或選取所有函數。您仍然可以選取記錄所有函數的選項,縱使其未全部顯示。如果您想要記錄特定函數的資料事件,如果您知道函數的 ,則可以手動新增該函數ARN。您也可以在主控台中完成建立追蹤,然後使用 AWS CLI 和 put-event-selectors命令來設定特定 Lambda 函數的資料事件記錄。如需詳細資訊,請參閱使用 管理追蹤 AWS CLI

  5. 針對 DynamoDB 資料表:

    1. 針對資料事件來源中,選擇 DynamoDB

    2. DynamoDB 資料表選擇中,選擇瀏覽以選取資料表,或貼到您可以存取的 DynamoDB 資料表ARN的 中。DynamoDB 資料表ARN使用以下格式:

      arn:partition:dynamodb:region:account_ID:table/table_name

      若要新增另一個資料表,請選擇新增資料列,然後瀏覽資料表,或貼到您可以存取的資料表ARN的 中。

  6. 若要為您的追蹤設定 Insights 事件和其他設定,請返回本主題中的上述程序 在主控台中建立追蹤

後續步驟

在您建立追蹤之後,即可返回追蹤以進行變更: