メインコンテンツにスキップ

ステート内の機密データ

OpenTofuステートは、使用されているリソースと「機密」の定義に応じて、機密データを含む場合があります。ステートには、リソースIDとすべてのリソース属性が含まれています。データベースなどのリソースの場合、初期パスワードが含まれている場合があります。

ローカルステートを使用する場合、ステートはプレーンテキストのJSONファイルに保存されます。

リモートステートを使用する場合、ステートはOpenTofuによって使用されるときにのみメモリに保持されます。保存時に暗号化される場合がありますが、これは特定のリモートステートバックエンドによって異なります。

推奨事項

OpenTofuで機密データを管理する場合は(データベースパスワード、ユーザーパスワード、秘密鍵など)、ステート自体を機密データとして扱ってください。

ステートをリモートに保存すると、セキュリティが向上する可能性があります。リモートステートが使用されている場合、OpenTofuはステートをローカルディスクに永続化せず、一部のバックエンドは保存時にステートデータを暗号化するように構成できます。

例:

  • S3バックエンドは、`encrypt`オプションが有効になっている場合、保存時の暗号化をサポートしています。IAMポリシーとロギングを使用して、無効なアクセスを識別できます。ステートのリクエストはTLS接続を介して行われます。