日志审计服务集成阿里云资源目录,助力企业简单、快速完成跨阿里云账号采集云产品日志。本文主要介绍通过控制台方式和Terraform方式完成日志审计服务多账号采集配置的操作步骤。
背景信息
操作流程
- 资源目录
- 开通资源目录。具体操作,请参见开通资源目录。
- 邀请成员账号。具体操作,请参见创建成员或邀请阿里云账号加入资源目录。
- 设置委派管理员。具体操作,请参见添加委派管理员账号。
- 日志审计服务
您可以通过日志服务控制台或Terraform完成如下操作。
- 管理账号或委派管理员账号作为日志审计服务的中心账号,完成多账号采集配置。
- 开启目标云产品日志的采集开关。具体操作,请参见开启日志采集功能。

优势
通过资源目录进行多账号管理,具备如下优势。
- 建立账号间信任关系。
帮助解决审计场景下阿里云账号间信任关系建立问题。
- 利用RD体系创建新账号。
避免了人工创建阿里云账号并做实名认证的繁琐流程。
- 邀请已有阿里云账号加入组织。
如果企业已拥有阿里云账号,可通过邀请方式将已有账号加入企业RD组织。
- 依据企业的业务环境构建目录结构。
通过订阅资源目录分组,可以解决企业内组织多账号自动发现的问题。
- 帮助企业建立树状的组织多账号结构。
企业根据业务情况,按照应用程序、环境、团队或任何其他对业务有意义的业务单元进行账号分组管理,建立树状的组织多账号结构。
- 为集成产品在组织成员账号中创建服务关联角色。
解决RAM角色被有意或无意修改问题。
- 支持在云服务中指定委派管理员。
通过委派管理员账号,可以将组织管理任务与业务管理任务相分离,管理账号执行资源目录的组织管理任务。
通过控制台完成配置
通过Terraform完成配置
Terraform是一种开源工具,用于安全高效地预览、配置和管理云基础架构和资源。Terraform的命令行接口(CLI)提供了一种简单机制,用于将配置文件部署到阿里云或其他任意支持的云上,并对其进行版本控制。更多信息,请参见使用Terraform配置日志审计服务。
步骤一:创建工作目录和文件
步骤二:配置身份信息
使用Terraform进行RD多账号采集配置的身份认证支持环境变量、静态AccessKey、ECS Role以及AssumeRole等方式。更多信息,请参见Authentication。
- 方式一:环境变量
获取阿里云账号或RAM用户AccessKey,然后在环境变量中配置用户身份以及日志审计服务的中心Project所在地域。示例如下:
export ALICLOUD_ACCESS_KEY="AccessKey ID" export ALICLOUD_SECRET_KEY="AccessKey Secret" export ALICLOUD_REGION="cn-huhehaote"
- 方式二:静态AccessKey
获取阿里云账号或RAM用户AccessKey,然后在terraform.tf中配置provider信息。
provider "alicloud" { access_key = "AccessKey ID" secret_key = "AccessKey Secret" region = "cn-huhehaote" }
- 方式三:ECS Role
借助ECS实例的RAM角色,将RAM角色和ECS实例关联起来,实现通过STS临时凭证访问日志审计服务,并且无需在ECS实例中保存AccessKey。
- 创建阿里云服务角色。具体操作,请参见创建普通服务角色。
- 为创建的RAM角色授予访问日志服务的权限。具体操作,请参见为RAM角色授权。相关的权限策略,请参见附录:日志审计所需最小写权限。
- 为ECS实例绑定RAM角色。具体操作,请参见为实例授予RAM角色。
- 在terraform.tf中配置provider信息。
provider "alicloud" { ecs_role_name = "您所创建的RAM角色名称" region = "cn-huhehaote" }
- 方式四:Assume Role
- 使用阿里云账号为RAM用户授予AliyunSTSAssumeRoleAccess权限。
- 创建阿里云服务角色。具体操作,请参见创建可信实体为阿里云服务的RAM角色。
- 为创建的RAM角色授予访问日志服务的权限。具体操作,请参见为RAM角色授权。相关的权限策略,请参见附录:日志审计所需最小写权限。
- 为受信账号下的RAM用户授予AssumeRole权限。具体操作,请参见步骤三:为受信云账号下的RAM用户授权。
- 获取RAM角色的临时安全令牌。具体操作,请参见步骤四:获取RAM角色的临时安全令牌。
- 在terraform.tf中配置provider信息。
provider "alicloud" { assume_role { role_arn = "acs:ram::阿里云账号UID:role/sls-test" session_name = "AuditRoleSession" session_expiration = 999 } }
步骤三:配置多账号采集
在terraform.tf文件中,添加如下配置。重要参数说明,请参见配置日志审计服务相关参数。
resource "alicloud_log_audit" "rdtest" {
display_name = "tf-audit-rd-test"
aliuid = "1379186349****"
variable_map = {
"actiontrail_enabled" = "false",
"actiontrail_ttl" = "180"
}
multi_account = ["1257918632****", "1324567349****"]
resource_directory_type="custom"
}
步骤四:使terraform.tf文件中的采集配置生效
附录:日志审计所需最小写权限
如下权限策略为操作日志审计服务的最小权限。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"log:GetApp",
"log:CreateApp"
],
"Resource": [
"acs:log:*:*:app/audit"
]
},
{
"Effect": "Allow",
"Action": [
"log:Get*",
"log:List*",
"log:CreateJob",
"log:UpdateJob",
"log:CreateProject"
],
"Resource": [
"acs:log:*:*:project/slsaudit-*"
]
}
]
}