為 Amazon S3 來源 (主控台) 建立 EventBridge 規則 - AWS CodePipeline

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

為 Amazon S3 來源 (主控台) 建立 EventBridge 規則

在中設置規則之前 EventBridge,您必須先建立 AWS CloudTrail 軌跡。如需詳細資訊,請參閱在主控台中建立線索

重要

如果您使用主控台建立或編輯管線, EventBridge 則會為您建立規則和 AWS CloudTrail 追蹤。

若要建立追蹤記錄
  1. 開啟主 AWS CloudTrail 控台。

  2. 在導覽窗格中,選擇 Trails (追蹤記錄)。

  3. 選擇 Create trail (建立追蹤)。對於 Trail name (線索名稱),輸入您的線索名稱。

  4. Storage location (儲存位置) 下,建立或指定要用來存放日誌檔案的儲存貯體。根據預設,所有 Amazon S3 儲存貯體和物件皆為私有。只有資源擁有者 (建立值區的 AWS 帳號) 可以存取值區及其物件。值區必須具有允許存取值區中物件的 AWS CloudTrail 權限的資源策略。

  5. 追蹤記錄儲存貯體和資料夾下,指定 Amazon S3 儲存貯體和物件前置詞 (資料夾名稱),以記錄資料夾中所有物件的資料事件。對於每個追蹤,您最多可以新增 250 個 Amazon S3 物件。完成所需的加密金鑰資訊,然後選擇「下一步

  6. 針對事件類型,選擇管理事件。

  7. 針對管理事件,選擇寫入。追蹤會在指定儲存貯體GetObject和前置詞上記錄 Amazon S3 物件層級API活動 (例如和PutObject)。

  8. 選擇 Write (寫入)

  9. 如果您對路線感到滿意,請選擇「建立路線」。

若要使用 Amazon S3 來源建立以管道為目標的 EventBridge 規則
  1. 在打開 Amazon EventBridge 控制台https://console.aws.amazon.com/events/

  2. 在導覽窗格中,選擇規則。保持選取預設匯流排,或選擇活動匯流排。選擇建立規則

  3. 名稱中,輸入規則的名稱。

  4. 在「規則類型」下,選擇「具有事件模式的規則」。選擇 Next (下一步)

  5. 事件來源下,選擇AWS 事件或 EventBridge 合作夥伴事件。

  6. 範例事件類型下,選擇AWS 事件。

  7. 範例事件中,輸入 S3 做為要篩選的關鍵字。選擇通AWS API話方式 CloudTrail

  8. 在 [建立方法] 下,選擇 [客戶模式 (JSON編輯器)]。

    粘貼下面提供的事件模式。請務必新增儲存貯體名稱和 S3 物件金鑰 (或金鑰名稱),這些金鑰可唯一識別儲存貯體中的物件requestParameters。在此範例中,會為名為的值區amzn-s3-demo-source-bucket和物件索引鍵建立規則my-files.zip。當您使用 ​Edit (編輯)​ 視窗指定資源時,您的規則將更新為使用自訂事件模式。

    以下是用於複製貼上的範例事件模式:

    { "source": [ "aws.s3" ], "detail-type": [ "AWS API Call via CloudTrail" ], "detail": { "eventSource": [ "s3.amazonaws.com" ], "eventName": [ "CopyObject", "CompleteMultipartUpload", "PutObject" ], "requestParameters": { "bucketName": [ "amzn-s3-demo-source-bucket" ], "key": [ "my-files.zip" ] } } }
  9. 選擇 Next (下一步)

  10. 目標類型中,選擇AWS 服務

  11. [選取目標] 中,選擇CodePipeline。在配管中ARN,輸入由此規則啟動的配管的配管。ARN

    注意

    若要取得管線ARN,請執行get-pipeline命令。配管出ARN現在輸出中。其建構格式如下:

    ARN: aws: 程式碼管線:region:account:pipeline-name

    樣品管道ARN:

    ARN:AW:代碼流水線:美國東部-2:80398:EXAMPLEMyFirstPipeline

  12. 若要建立或指定授與呼叫 EventBridge 規則關聯之目標之 EventBridge 權限的IAM服務角色 (在此情況下,目標為 CodePipeline):

    • 選擇 [為此特定資源建立新角色] 以建立服務角色,以提供啟動管線執行的 EventBridge權限的服務角色。

    • 選擇 [使用現有角色] 以輸入授與啟動管線執行之 EventBridge 權限的服務角色。

  13. 選擇 Next (下一步)

  14. 在 [標] 頁面上,選擇 [下一步]。

  15. 在 [檢閱並建立] 頁面上,檢閱規則組態。如果您對此規則感到滿意,請選擇 Create rule (建立規則)