web-dev-qa-db-ja.com

TerraformテンプレートをCloudformationテンプレートに変換する

既存のテラフォームテンプレート(hcl)をawsクラウドフォーメーションテンプレート(json/yaml)に変換したいと思います。

基本的に、CFN_NAGを介してこれらのテンプレートのセキュリティ問題を見つけたいと思います。

私がすでに試したアプローチは、HCLをJSONに変換してから、テンプレートをCFN_NAGに渡すことでしたが、両方のテンプレートの構造が異なるため、失敗しました。

誰かがここで何か提案を提供できますか?

7
H4X

これを実現するためのかなり複雑な方法は、Terraformを使用して実際のAWS環境を立ち上げ、次にAWSの CloudFormer を使用してTerraformが構築したものからCloudFormationテンプレート(JSONまたはYAML)を抽出することです。その時点で、 cfn-nag を使用できます。

CloudFormerには、現在すべてのAWSリソースがサポートされているわけではないという制限があります(たとえば、RDSセキュリティグループ)が、すべての基本的なAWSリソースを取得できます。

コストを最小限に抑えるために、CloudFormerを含むすべての環境を削除することを忘れないでください。

8
P Burke

静的コード分析を使用して、Terraformセットアップのセキュリティ問題を見つけたいと考えています。

後でcfn-nagを使用するためにTerraformをCloudFormationに変換しようとするのは1つの方法です。ただし、現在、Terraformセットアップを直接操作するツールが存在します。

terrascan をご覧になることをお勧めします。 terraform_validate に基づいて構築されています。

1
Philipp Claßen