View a markdown version of this page

啟用程式碼檢閱 - AWS 安全代理程式

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

啟用程式碼檢閱

透過從 GitHub 儲存庫或 S3 儲存貯體連接原始程式碼,設定您的 Agent Space 以啟用程式碼檢閱。程式碼檢閱會分析您的原始程式碼是否有安全漏洞,以及是否符合組織的自訂安全需求。

設定程式碼檢閱組態是整個客服人員空間的操作。您連線的整合和 S3 儲存貯體會跨 功能共用,包括程式碼檢閱和滲透測試。

完成設定後,使用者可以在 AWS Security Agent Web 應用程式中建立和執行程式碼檢閱,以掃描儲存庫和 S3 來源是否有安全問題。

注意

如果您已將 GitHub 儲存庫連接到您的客服人員空間 (例如,透過滲透測試設定),則程式碼檢閱已啟用。您可以略過此設定,並直接前往 Web 應用程式來建立程式碼檢閱。請參閱 建立程式碼檢閱

先決條件

開始前,請確保您具備以下條件:

  • 在 AWS 管理主控台中建立的客服人員空間 (請參閱 建立 代理程式空間)

  • 至少下列其中一個來源碼輸入:

  • 為您的客服人員空間設定整合的許可

  • (選用) 如果您計劃使用安全需求驗證,則在安全需求套件中至少啟用一個安全需求 (請參閱 管理安全需求)

存取程式碼檢閱設定精靈

導覽至代理程式空間的程式碼檢閱設定。

  1. 在 AWS Security Agent 主控台中,選取您的 Agent Space。

  2. 從下列其中一個位置選擇啟用程式碼檢閱

    • 程式碼檢閱卡片

    • 程式碼檢閱索引標籤,然後選擇啟用程式碼檢閱

提示

如果您希望 AWS Security Agent 自動處理程式碼檢閱意見回饋,也請啟用程式碼修復。如需詳細資訊,請參閱 讓使用者能夠開始修復滲透測試和程式碼檢閱問題清單

系統會將您導向至設定程式碼檢閱組態精靈。

步驟 1:連接整合、儲存庫和儲存貯體

在精靈的第一個步驟中,連接您的原始程式碼輸入並設定程式碼檢閱設定。您必須新增至少一個 GitHub 儲存庫或 S3 儲存貯體才能繼續。

重要

此處設定的整合和 S3 儲存貯體會跨您的客服人員空間共用。變更同時適用於程式碼檢閱和滲透測試功能。

連接 GitHub 儲存庫

從授權的 GitHub 組織或使用者帳戶新增 GitHub 儲存庫。選擇新增會開啟兩步驟的 Connect GitHub 精靈,首先選取儲存庫,然後設定 AWS Security Agent 可以對每個儲存庫採取的動作。

  1. 連線整合區段中,選擇新增

  2. 選取包含您要檢閱之儲存庫的 GitHub 註冊。

  3. Connect GitHub 儲存庫步驟中,選取您要連線之每個儲存庫的核取方塊。

  4. 選擇下一步以前往管理功能

注意

在程式碼檢閱和滲透測試期間,連線的儲存庫會唯讀存取以進行程式碼分析。您可以設定寫入動作,例如在下一個步驟張貼評論和開啟修補提取請求。

注意

如果您尚未註冊 GitHub 整合,請選擇設定以導覽至整合頁面,您可以在其中授權 AWS Security Agent GitHub 應用程式。如需詳細資訊,請參閱將 AWS 安全代理程式連線至 GitHub 儲存庫

設定 GitHub 儲存庫功能

Connect GitHub 精靈的管理功能步驟中,選擇 AWS Security Agent 在每個儲存庫中可以執行的動作。每個儲存庫都會獨立設定程式碼檢閱註解程式碼修復

  1. 對於每個儲存庫,在 上切換程式碼檢閱評論,讓 AWS Security Agent 將安全調查結果發佈為提取請求的評論。

  2. 對於每個儲存庫,在 上切換程式碼修復,讓 AWS Security Agent 修正問題清單。啟用後,Web 應用程式使用者可以請求提取請求以修正問題清單,而提取請求作者可以評論@AWS-Security-Agent fix all findings.讓代理程式處理其評論。

  3. 選擇儲存以套用您的選擇,並返回程式碼檢閱設定精靈。

為儲存庫啟用程式碼檢閱註解時:

  • 當提取請求標記為「準備檢閱」時,AWS Security Agent 會自動分析提取請求。草稿提取請求不會進行分析。

  • 安全調查結果會直接發佈為提取請求上的評論,並附有特定的修補指導。

  • 分析會使用您設定的程式碼檢閱設定 (安全漏洞、自訂需求或兩者)。

注意

提取請求註解僅適用於私有 GitHub 儲存庫。

為儲存庫啟用程式碼修復時,Web 應用程式使用者可以開始修復該儲存庫上的程式碼檢閱和滲透測試結果,而 AWS Security Agent 會將每個修正做為提取請求交付。如需詳細資訊,請參閱讓使用者能夠開始修復滲透測試和程式碼檢閱問題清單

如需提取請求調查結果如何在 GitHub 中顯示以及如何回應它們的詳細資訊,請參閱 檢閱提取請求中的程式碼安全性問題清單

新增 S3 儲存貯體

新增包含來源碼或內容資源的 S3 儲存貯體以進行程式碼檢閱。

  1. S3 儲存貯體區段中,選擇新增 S3 資源

  2. 輸入包含原始碼的儲存貯體或字首的 S3 URI。

  3. 選擇新增

注意

您最多可以新增 10 個 S3 資源。S3 儲存貯體會跨 功能共用,包括程式碼檢閱和滲透測試。

提示

您可以新增包含原始碼、組態檔案、infrastructure-as-code範本或您希望 AWS Security Agent 分析安全問題的其他成品的 S3 儲存貯體。

設定程式碼檢閱設定

設定 AWS Security Agent 在程式碼檢閱期間分析的安全問題類型。此設定適用於在此客服人員空間中啟用程式碼檢閱的所有儲存庫和來源。

  1. 程式碼檢閱設定區段中,選取下列其中一個選項:

    • 安全需求驗證 – 驗證程式碼是否符合您在安全需求套件中啟用的安全需求。

    • 安全漏洞調查結果 – 識別程式碼中的常見安全漏洞。

    • 安全需求和漏洞調查結果 – 分析程式碼是否符合您已啟用的安全需求和常見的安全漏洞。這是預設設定。

注意

啟用安全需求驗證時,AWS Security Agent 會根據您在安全需求套件中啟用的安全需求檢查程式碼。如果您選取安全需求驗證,但未啟用至少一個安全需求,AWS Security Agent 將不會識別需求型問題清單。如需安全需求的詳細資訊,請參閱「管理安全需求」。

  1. 選擇下一步以繼續進行選用組態。

步驟 2:選用組態

在精靈的第二個步驟中,為您的程式碼檢閱環境設定選用的 CloudWatch 記錄和服務存取設定。

(選用) 設定 CloudWatch 日誌

設定 CloudWatch 日誌群組,以在程式碼檢閱期間擷取和分析應用程式行為。

  1. 展開 CloudWatch 日誌區段。

  2. 日誌群組下拉式清單中,從您的 AWS 帳戶選取一或多個現有的 CloudWatch 日誌群組。

注意

如果您未選取日誌群組,AWS Security Agent 會自動建立預設日誌群組來存放程式碼檢閱執行日誌。

(選用) 設定服務存取

設定 AWS Security Agent 用來存取您的 AWS 資源的 IAM 服務角色,例如 S3 儲存貯體和 CloudWatch 日誌以進行程式碼檢閱。

  1. 展開服務存取區段。

  2. 選取以下其中一個選項:

    • 建立預設角色 – AWS Security Agent 會自動建立具有程式碼檢閱必要許可的新 IAM 角色。

    • 使用現有的服務角色 – 從下拉式功能表中選取現有的 IAM 角色。

  3. 如果使用預設角色,請輸入服務角色名稱。名稱在帳戶中的所有角色中必須是唯一的,並使用英數字元和+=,.@-_字元,且不能包含空格。

注意

服務角色名稱的長度上限為 64 個字元。如果您未選取現有角色,系統會自動建立服務角色。

  1. 選擇儲存以完成設定。

設定後

完成程式碼檢閱設定精靈之後:

  • 客服人員空間頁面上的程式碼檢閱卡片會顯示就緒狀態。

  • 使用者可以啟動 Web 應用程式並建立程式碼檢閱,以掃描連線的儲存庫和 S3 來源。

  • 您可以隨時修改組態,方法是在程式碼檢閱索引標籤上選擇編輯組態

編輯程式碼檢閱組態

若要在初始設定後修改程式碼檢閱組態:

  1. 在 AWS Security Agent 主控台中導覽至您的 Agent Space。

  2. 選取程式碼檢閱索引標籤。

  3. 選擇 Edit Configuration (編輯組態)

  4. 視需要更新您的整合、S3 儲存貯體、程式碼檢閱設定、CloudWatch 日誌或服務存取。

  5. 選擇儲存

後續步驟

設定程式碼檢閱組態之後: