Terraform は tfstate にリソースの属性を平文で書き込みます。sensitive を付けた値や data source で読んだシークレットも例外ではありません。扱う人が増えるほど、シークレットが漏れる経路も増えます。
そのため、これまでは tfstate にシークレットを残さないよう、管理外にするか、ダミー値を置いて ignore_changes を設定し、手動で更新していました。2024 年末〜2025 年に入った Terraform 1.10 の ephemeral と 1.11 の write-only で、Terraform で管理したまま state に残さず扱えるようになりました。
本セッションでは、tfstate の仕組み、権限管理と暗号化、ephemeral と write-only arguments による新しいシークレット管理を話します。暗号化では OpenTofu 独自の state 暗号化も取り上げます。また、実プロジェクトへの導入経験をもとに、プロバイダの対応状況や注意点を AWS と Google Cloud の例で紹介します。
株式会社スリーシェイク
シニアアーキテクト
ソーシャルアプリのアプリケーション、インフラエンジニア、電子契約サービスのSREを経て、2022年にスリーシェイクに入社。
クライアントワークでクラウドインフラの技術支援を行っています。設計構築運用の支援を行っています。
AWS、Google Cloud、Terraformをこよなく愛しています。