For AI agents: A markdown version of this page is available at https://docs.datadoghq.com/security/code_security/iac_security/iac_rules/terraform-alicloud-ram-policy-attached-to-user.md.
A documentation index is available at /llms.txt.
RAM policies should not be attached directly to users. The Terraform resource alicloud_ram_user_policy_attachment must be undefined or omitted from the configuration. This rule flags any alicloud_ram_user_policy_attachment defined for users as incorrect.
Compliant Code Examples
# Create a RAM Group Policy attachment.
resource"alicloud_ram_group""group2"{name="groupName"comments="this is a group comments."force=true}resource"alicloud_ram_policy""policy2"{name="policyName"document=<<EOF {
"Statement": [
{
"Action": [
"oss:ListObjects",
"oss:GetObject"
],
"Effect": "Allow",
"Resource": [
"acs:oss:*:*:mybucket",
"acs:oss:*:*:mybucket/*"
]
}
],
"Version": "1"
}
EOFdescription="this is a policy test"force=true}resource"alicloud_ram_group_policy_attachment""attach"{policy_name=alicloud_ram_policy.policy2.namepolicy_type=alicloud_ram_policy.policy2.typegroup_name=alicloud_ram_group.group2.name}
# Create a RAM Role Policy attachment.
resource"alicloud_ram_role""role3"{name="roleName"document=<<EOF {
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"Service": [
"apigateway.aliyuncs.com",
"ecs.aliyuncs.com"
]
}
}
],
"Version": "1"
}
EOFdescription="this is a role test."force=true}resource"alicloud_ram_policy""policy3"{name="policyName"document=<<EOF {
"Statement": [
{
"Action": [
"oss:ListObjects",
"oss:GetObject"
],
"Effect": "Allow",
"Resource": [
"acs:oss:*:*:mybucket",
"acs:oss:*:*:mybucket/*"
]
}
],
"Version": "1"
}
EOFdescription="this is a policy test"force=true}resource"alicloud_ram_role_policy_attachment""attach"{policy_name=alicloud_ram_policy.policy3.namepolicy_type=alicloud_ram_policy.policy3.typerole_name=alicloud_ram_role.role3.name}
Non-Compliant Code Examples
# Create a RAM User Policy attachment.
resource"alicloud_ram_user""user1"{name="userName"display_name="user_display_name"mobile="86-18688888888"email="hello.uuu@aaa.com"comments="yoyoyo"force=true}resource"alicloud_ram_policy""policy1"{name="policyName"document=<<EOF {
"Statement": [
{
"Action": [
"oss:ListObjects",
"oss:GetObject"
],
"Effect": "Allow",
"Resource": [
"acs:oss:*:*:mybucket",
"acs:oss:*:*:mybucket/*"
]
}
],
"Version": "1"
}
EOFdescription="this is a policy test"force=true}resource"alicloud_ram_user_policy_attachment""attach"{policy_name=alicloud_ram_policy.policy1.namepolicy_type=alicloud_ram_policy.policy1.typeuser_name=alicloud_ram_user.user1.name}
1
2
rulesets:- Terraform / Alicloud # Rules to enforce / Alicloud.
Request a personalized demo
Get Started with Datadog
Ask AI
AI-generated responses may be inaccurate. Verify important info.