

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

# 使用 Amazon Inspector 自動化 Lambda 的安全評估
<a name="governance-code-scanning"></a>

 [Amazon Inspector](https://aws.amazon.com/inspector/) 是一項漏洞管理服務，可持續掃描工作負載，以尋找已知的軟體漏洞和意外的網路暴露。Amazon Inspector 會建立調查結果以描述漏洞、識別受影響的資源、評定漏洞嚴重性並提供修補指引。

Amazon Inspector 支援為 Lambda 函數和層提供持續的自動化安全性漏洞評估。Amazon Inspector 為 Lambda 提供兩種掃描類型：
+ **Lambda 標準掃描 (預設)：**掃描 Lambda 函數及其層內的應用程式相依性，以尋找[套件漏洞](https://docs.aws.amazon.com/inspector/latest/user/findings-types.html#findings-types-package)。
+ **Lambda 程式碼掃描**：掃描函數和層內的自訂應用程式程式碼，以尋找[程式碼漏洞](https://docs.aws.amazon.com/inspector/latest/user/findings-types.html#findings-types-code)。您可以啟動 Lambda 標準掃描，或同時啟動 Lambda 標準掃描和 Lambda 程式碼掃描。

若要啟用 Amazon Inspector，請導覽至 [Amazon Inspector 主控台](https://console.aws.amazon.com/inspector/)，展開**設定**區段，然後選擇**帳戶管理**。在**帳戶**索引標籤上，選擇**啟動**，然後選取其中一個掃描選項。

您可以為多個帳戶啟用 Amazon Inspector，並在設定 Amazon Inspector 時為特定帳戶的組織委派管理 Amazon Inspector 的許可。啟用時，您需要透過建立以下角色來授予 Amazon Inspector 許可：`AWSServiceRoleForAmazonInspector2`。Amazon Inspector 主控台允許您使用一鍵式選項建立此角色。

對於 Lambda 標準掃描，Amazon Inspector 會在下列情況下啟動 Lambda 函數的漏洞掃描。
+ 一旦 Amazon Inspector 發現現有 Lambda 函數。
+ 當您部署新的 Lambda 函數時。
+ 當您對現有的 Lambda 函數或其層的應用程式程式碼或相依性部署更新時。
+ 每當 Amazon Inspector 新增一個常見漏洞和暴露 (CVE) 項目到其資料庫，而該 CVE 與您的函數相關時。

對於 Lambda 程式碼掃描，Amazon Inspector 會使用自動推理和機器學習來評估您的 Lambda 函數應用程式程式碼，以分析您的應用程式程式碼是否符合整體安全規範。若 Amazon Inspector 在您的 Lambda 函數應用程式程式碼中偵測到漏洞，Amazon Inspector 會產生一份詳細的**程式碼漏洞**調查結果。如需檢視可能偵測項目的清單，請參閱 [Amazon CodeGuru Detector 程式庫](https://docs.aws.amazon.com/codeguru/detector-library/)。

若要檢視調查結果，請前往 [Amazon Inspector 主控台](https://console.aws.amazon.com/inspector/)。在**調查結果**選單上，選擇**依 Lambda 函數**以顯示對 Lambda 函數執行的安全性掃描結果。

若要從標準掃描中排除 Lambda 函數，請使用以下鍵值對標記函數：
+ `Key:InspectorExclusion`
+ `Value:LambdaStandardScanning`

若要從程式碼掃描中排除 Lambda 函數，請使用以下鍵值對標記函數：
+ `Key:InspectorCodeExclusion`
+ `Value:``LambdaCodeScanning`

例如，如下圖所示，Amazon Inspector 會自動偵測漏洞並將發現的漏洞分類為**程式碼漏洞**類型，這表示這些漏洞存在於函數的程式碼中，而不是在其中一個程式碼相依程式庫中。您可以一次檢查一個特定函數或多個函數的這些詳細資訊。

 ![\[Amazon Inspector finds vulnerabilities in Lambda code.\]](http://docs.aws.amazon.com/zh_tw/lambda/latest/dg/images/governance-code-scanning-1.png) 

您可以深入研究每項結果，並了解如何修補問題。

 ![\[Amazon Inspector console displays code vulnerability details.\]](http://docs.aws.amazon.com/zh_tw/lambda/latest/dg/images/governance-code-scanning-2.png) 

在使用您的 Lambda 函數時，確認您遵守 Lambda 函數的命名慣例。如需更多詳細資訊，請參閱 [使用 Lambda 環境變數](configuration-envvars.md)。

您要負責執行自己接受的修補建議。在接受前，請務必檢閱修補建議。您可能需要編輯修補建議，以確保您的程式碼符合您的預期。