このページのトピック
Infrastructure-as-Code (IaC) の検索
Trend Cloud One™ - GitHubアプリは、Infrastructure-as-code (IaC) テンプレートをスキャンし、セキュリティのベストプラクティスに照らして評価します。選択したGitHubリポジトリでプルリクエストが開かれたとき、または更新されたときに自動的に検索されるように、Organization内のリポジトリを選択できます。
Trend Cloud One のインストール方法 - GitHubアプリ
GitHubソースアカウントの使用を開始するのガイドに従ってください。
サポートされているテンプレートとリソース
サポートされているテンプレート | サポートされているリソースの種類 |
---|---|
Terraform | S3 |
Cloudformation YML | EC2 |
Cloudformation JSON | ELBv2 |
SNS | |
DynamoDB | |
SQS | |
RDS Cluster | |
RDS Instance |
リポジトリ検索対象の設定
初期設定により、検索するTerraformテンプレートとCloudFormationテンプレートが決まります。
{
"frameworks": {
"terraform": { "templateFilesPattern": "**/*.tf" },
"cloudformation": { "templateFilesPattern": "*(cloudformation|template|CloudFormation|Cloudformation|cloudFormation).*(yml|yaml|json)" }
}
}
ただし、初期設定を上書きできます。
- 検索するリポジトリのルートに、
.template-security
というディレクトリを作成します。 config.json
ファイルを設定とともに追加します。
有効なJSONパラメータ
frameworks
: (オブジェクト) キーとして検索するフレームワークが含まれます。サポートされている値:- "terraform"
- "cloudformation"
templateFilesPattern
: (文字列) ファイルパターンを使用してファイルとディレクトリを照合します。
パスの一部に一致する特殊文字
*
1つのパスの一部に含まれる0個以上の文字に一致?
1文字に一致[...]
RegExpの範囲と同様に、文字の範囲に一致します。
範囲の最初の文字が!
または^
の場合、範囲外の任意の文字に一致します。!(pattern|pattern|pattern)
どのパターンにも一致しないものに一致します。?(pattern|pattern|pattern)
パターンの0回または1回の出現に一致します。+(pattern|pattern|pattern)
パターンの1回以上の出現に一致します。*(a|b|c)
パターンの0回以上の出現に一致@(pattern|pat*|pat?erN)
いずれかのパターンに一致**
「globstar」がパス部分に単独で含まれる場合、0個以上のディレクトリおよびサブディレクトリに一致します。
これはシンボリックリンクディレクトリをクロールしないことに注意してください。
一致の例:
*(*.tf)
.tf
で終わるファイルのみに一致**/*(*.tf|*.tfvars)
最上位ディレクトリから順に、.tf
または.tfvars
で終わるファイルに一致します。*(*.tf|*.tfvars)
ルートディレクトリ内の.tf
または.tfvars
で終わるファイルにのみ一致します。
ファイルまたはディレクトリのパス部分の最初の文字が .
の場合、そのパターンの対応するパス部分の最初の文字が .
でない限り、globパターンとは一致しません。
たとえば、パターン a/.*/c
は a/.b/c
にあるファイルと一致します。ただし、パターン a/*/c
では指定できません。これは、 *
がドット文字で始まらないためです。 {: .note }
検索の開始
検索を開始するには、Trend Cloud One - GitHub Appをインストールしたリポジトリに対して、GitHubでプルリクエストを作成します。
これで、GitHubのプルリクエストの下部に検索のステータスが表示されます。