如何通过Terraform配置AWS Security Lake委托管理员账户?
如何通过Terraform配置AWS Security Lake委托管理员账户
核心说明
AWS Security Lake的委托管理员配置并不通过securitylake_data_lake资源实现——该资源仅用于创建和配置Security Lake的核心存储、加密、生命周期等基础属性。委托管理员的设置需要使用专门的aws_securitylake_administrator资源,这是Terraform AWS Provider中专门用于管理Security Lake组织级管理员的资源。
基础配置示例
在AWS组织主账户的Terraform配置中,添加以下代码即可指定委托管理员账户:
resource "aws_securitylake_administrator" "delegate_admin" { account_id = "123456789012" # 替换为目标委托管理员的AWS账户ID }
前置要求
- 该配置必须在AWS组织主账户下执行
- 目标委托管理员账户必须已经加入当前AWS Organizations
- 确保使用的Terraform AWS Provider版本不低于v4.67.0(
aws_securitylake_administrator资源在此版本首次引入)
关联Security Lake创建的完整配置
如果需要在创建Security Lake的同时配置委托管理员,可以将两个资源结合,通过depends_on确保依赖顺序:
# 在组织主账户中创建Security Lake实例 resource "aws_securitylake_data_lake" "main" { configuration { encryption_configuration { kms_key_id = "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } lifecycle_configuration { expiration { days = 365 } } storage_class = "STANDARD" } meta_store_manager_role_arn = "arn:aws:iam::111122223333:role/SecurityLakeMetaStoreManager" } # 配置委托管理员,确保Security Lake创建完成后再执行 resource "aws_securitylake_administrator" "delegate_admin" { account_id = "123456789012" depends_on = [aws_securitylake_data_lake.main] }
内容的提问来源于stack exchange,提问作者dobbs
相关产品推荐
相关产品推荐

