| 位置資訊 | 頂部導航欄 > Template Scanner |
Template Scanner 使您能夠在您的 Terraform、AWS Cloud Development Kit (CDK)、Serverless Framework 和 AWS CloudFormation 模板上運行 TrendAI Vision One™™ – Cloud Risk Management 規則,以檢測您在 AWS、Azure 和 GCP 帳戶中的風險。您可以在工作流程中添加預防性安全和治理控制,以便在啟動任何服務和資源之前識別和修正問題。
Template Scanner 是什麼?
Template Scanner 提供預防措施,確保您在 Azure、AWS 和 GCP 的雲端基礎設施保持合規,透過在基礎設施即代碼(IaC)部署前檢測風險。
您可以使用此服務來掃瞄 Cloudformation 模板和 terraform 配置檔案。
支援的雲端提供者
Template Scanner 目前支援以下雲端供應商。關於每個雲端供應商的具體支援範圍,請參閱:TrendAI Vision One™ - Template Scanner 覆蓋範圍
- AWS
- Azure
- GCP
支援的功能
要掃瞄您的 IaC 檔案,您可以使用以下其中一種或多種方法:
- 使用應用程式介面上傳範本
- 使用 API 以範本發送請求
|
功能
|
Template Scanner UI/API
|
|
載入檔案的圖形介面
|
✅
|
|
公共 API
|
✅
|
|
帳戶和個人資料規則設定
|
✅
|
|
Github 整合
|
❌
|
|
AWS CloudFormation
|
✅
|
|
AWS 雲端開發套件 (CDK)
|
✅
|
|
Serverless Framework (AWS)
|
✅
|
|
Terraform(AWS、Azure 和 GCP)
|
✅
透過 Terraform 計劃檔案(
.json)和 HCL 模板(.tf)提供支援 |
透過 UI 掃瞄
- 選取您要掃瞄的規則設定類型:
- Default rule settings:使用您組織的規則設定上傳並掃瞄。
- Profile rule settings:使用選定設定檔中的規則設定上傳並掃瞄。
- Account rule settings:使用選定帳戶的規則設定上傳並掃瞄。
掃描 CloudFormation 模板
- CloudFormation 模板可以以 JSON 或 YAML 格式上傳。
- 您也可以在 YAML 模板中使用 ! 條件。
掃描 AWS 雲端開發套件 (CDK)
Template Scanner 支援透過從 CDK 程式碼合成 Cloudformation 範本來評估您的 CDK 檔案。
- 安裝AWS CDK CLI
- 在包含您CDK程式碼的目錄中,執行
cdk synth。這將輸出一個 YAML CloudFormation 檔案(如果需要,也可以使用--json)。 - 使用 Template Scanner UI 或 API 端點掃瞄由
cdk synth生成的 CloudFormation 檔案。
掃描無伺服器框架
Template Scanner 支援透過將無伺服器代碼合成 Cloudformation 模板來評估您的 Serverless Framework 應用程式。
- 在包含
serverless文件的目錄中,執行serverless package以在.serverless/cloudformation-template-update-stack.json中生成一個JSON文件。 - 使用 Template Scanner UI 或 API 端點來掃瞄由
serverless package生成的 CloudFormation 檔案。
掃描 Terraform 計劃
-
請按照以下步驟,透過您的命令列工具將 Terraform 模板轉換為 JSON 格式的 Terraform 計劃:
- 在與 .tf 模板相同的目錄中,匯出您提供者的 「access key」、「secret key,」 和 「export region」(例如 `export AWS_REGION=us-east-1`)
- 執行指令
terraform init - 執行命令
terraform plan -out=your_file - 執行命令
terraform show -json your_file > your_file.json。您的 Terraform JSON 計劃已準備好從與您的 .tf 文件相同的資料夾上傳至 Template Scanner。
-
點擊「Upload and scan」以查看您選擇的規則設定的掃瞄結果。
-
在掃描您的範本時,您將收到缺少參數的訊息。請決定是否要「Proceed」或「取消」掃描過程。

注意
缺少參數的資源將不會被掃瞄,因此會導致部分掃瞄結果。 -

注意
提供的解決步驟適用於透過 CLI 或控制台進行的工作流程檢查失敗。您也可以將這些步驟作為在 CloudFormation 中解決問題的指南。
掃描 Terraform HCL 模板
- 建立一個包含您 .tf 檔案的 ZIP 檔案
- 點擊Template Scanner選單
- 點擊Terraform標籤
- 瀏覽您的ZIP檔案
- 點擊上傳並掃瞄
透過 API 掃瞄
請參閱API 參考,了解如何在您的自動化或建置管道中使用 Template Scanner API。
其他範例如下:
支援的規則
以下 API 端點可用於檢索 Template Scanner 支援的規則列表:
請參閱此頁面以了解支援資源的防護總覽。
為什麼我看不到任何掃瞄結果?
您可能會因以下原因收到空回應或錯誤:
- 不支援的資源類型或規則 - Template Scanner 僅支援資源層級規則。請參閱 API 以獲取支援的規則和資源類型列表。我們計劃隨時間增加對更多資源類型的支援。如果您有特定的資源類型需要優先支援,請聯繫您的客戶經理。
- 沒有預設值的參數 - 具有無預設值參數的 CloudFormation 模板可能無法被處理。
- 不支援的 AWS CloudFormation 內建函數 - 使用不支援的內建函數的 CloudFormation 範本可能無法處理或無法產生完整結果。以下是 CloudFormation
範本中的 「supported」 內建函數:
- Fn::Base64
- Fn::And
- Fn::Equals
- Fn::If
- Fn::Not
- Fn::Or
- Fn::FindInMap
- Fn::GetAtt
- Fn::GetAZs
- Fn::Join
- Fn::Select
- Fn::Split
- Fn::Sub
- 參考
您可能需要暫時將這些函數替換為靜態值,以便您的模板能夠正確掃描。
