TerraformでAWSを管理するためには、IAMユーザーに以下の権限が必要です。
AmazonEC2FullAccess
またはAmazonEC2ReadOnlyAccess
: EC2リソースを管理するための権限AmazonS3FullAccess
またはAmazonS3ReadOnlyAccess
: S3バケットを管理するための権限AmazonRDSFullAccess
またはAmazonRDSReadOnlyAccess
: RDSデータベースを管理するための権限AmazonVPCFullAccess
またはAmazonVPCReadOnlyAccess
: VPCを管理するための権限IAMFullAccess
: IAMユーザーを作成・管理するための権限AmazonRoute53FullAccess
またはAmazonRoute53ReadOnlyAccess
: Route53を管理するための権限- その他、使用するAWSサービスに合わせた必要な権限が必要です。
ただし、これらの権限は、必要な最小限の権限に過ぎません。Terraformのコードによって使用されるリソースに対してのみ、必要な権限を付与することが推奨されます。これにより、権限の誤用を回避し、セキュリティを向上させることができます。また、AWSのポリシーをカスタマイズすることで、さらに詳細な権限設定が可能です。