質問29
ABC EnterpriseのSecurity Operationsチームは、S3バケットを作成するTerraformコンフィギュレーションはすべて暗号化機能を有効にしなければならないことを義務付けたいと考えています。それを実現する最善の方法は何ですか?
Sentinelは、HashiCorp Enterprise製品に統合されたポリシーアズコードフレームワークです。きめ細かいロジックベースのポリシー決定を可能にし、外部ソースからの情報を使用するように拡張することができます。
SentinelとTerraform Cloudの併用:
* ポリシーの定義 - ポリシーは、Terraformのプラン、ステート、コンフィギュレーションを解析するためのインポートを持つポリシー言語を使って定義されます。
* 組織のポリシー管理 - ポリシーを管理する権限を持つユーザーは、VCS 統合を構成するか、API を通じてポリシー セットをアップロードすることで、組織にポリシーを追加できます。また、実行時にポリシー セットをチェックするワークスペースを定義します。(権限の詳細)。
* 実行時のポリシー・チェックの実施 - ポリシーのチェックは、テラフォーム・プランの後、テラフォーム・プランが確認されるか、テラフォーム・アプリケーションが実行される前に、実行時に行われる。
* Sentinel Terraformデータのモック - Terraform Cloudは、ワークスペース内の任意のランに対してモックデータを生成する機能を提供する。このデータは、デプロイ前にポリシーをテストするためにSentinel CLIで使用できる。
https://www.terraform.io/docs/cloud/sentinel/index.html