更新时间:2025-09-25 GMT+08:00
分享

访问IAM资源所需的权限

本节给出一些访问IAM自身资源所需权限的示例,包含允许用户管理自己的密码、访问密钥等等。

允许对IAM控制台进行只读访问

您可以直接使用名为IAMReadOnlyPolicy的系统身份策略实现对IAM控制台的只读访问,也可以使用下面的示例来达到目标。此示例主要说明如何创建身份策略以允许IAM用户执行任何get、list、check、show类的IAM操作。星号作为通配符,在身份策略中使用iam:*:get*时,生成的权限会包括授权项第3段以get开头的所有IAM操作,例如,iam:users:getUserV5和iam:groups:getGroupV5等。使用通配符是非常有用的,特别是将来IAM添加了新的授权项,在这种情况下,授予的权限会自动包含新增的授权项。
{
	"Version": "5.0",
	"Statement": [{
		"Effect": "Allow",
		"Action": [
			"iam:*:get*",
			"iam:*:list*",
			"iam:*:check*",
			"iam:*:show*"
		]
	}]
}

允许用户管理用户组的成员

以下身份策略示例允许更新名为DevelopmentTeam用户组的成员关系。在第一个Statement中,允许用户列出所有的用户和用户组以及查看用户的详细信息;在第二个Statement中,允许用户查看DevelopmentTeam用户组的详情,以及为DevelopmentTeam用户组添加或移除用户组成员。注意,在使用时您需要将<account-id>替换为您账号的实际ID。
{
	"Version": "5.0",
	"Statement": [{
			"Effect": "Allow",
			"Action": [
				"iam:groups:listGroupsV5",
				"iam:users:getUserV5",
				"iam:users:listUsersV5"
			]
		},
		{
			"Effect": "Allow",
			"Action": [
				"iam:groups:getGroupV5",
				"iam:permissions:addUserToGroupV5",
				"iam:permissions:removeUserFromGroupV5"
			],
			"Resource": [
				"iam:*:<account-id>:group:DevelopmentTeam"
			]
		}
	]
}

允许用户管理IAM用户

以下身份策略示例允许用户执行IAM用户相关的操作。在第一个Statement中,允许用户查询用户详细信息以及列出用户列表;在第二个Statement中,允许用户查创建IAM用户及其登录信息;在第三个Statement中,允许用户删除IAM用户,注意删除IAM用户前需要先解绑IAM用户身上附加的身份策略;在第四个Statement中,允许用户更新IAM用户的基本信息,例如启用状态和描述信息等;在第五个Statement中,允许用户查看身份策略以及为IAM用户附加和分离身份策略。
{
	"Version": "5.0",
	"Statement": [{
			"Effect": "Allow",
			"Action": [
				"iam:users:getUserV5",
				"iam:users:listUsersV5"
			]
		},
		{
			"Effect": "Allow",
			"Action": [
				"iam:users:createUserV5",
				"iam:users:createLoginProfileV5"
			]
		},
		{
			"Effect": "Allow",
			"Action": [
				"iam:users:deleteUserV5"
			]
		},
		{
			"Effect": "Allow",
			"Action": [
				"iam:users:updateUserV5"
			]
		},
		{
			"Effect": "Allow",
			"Action": [
				"iam:policies:getV5",
				"iam:policies:getVersionV5",
				"iam:policies:listV5",
				"iam:policies:listVersionsV5",
				"iam:users:attachPolicyV5",
				"iam:users:detachPolicyV5",
				"iam:users:listAttachedPoliciesV5"
			]
		}
	]
}

允许用户设置账号的密码策略

以下身份策略示例允许用户查看和设置您账号中的密码策略,密码策略一般包含:密码中包含的字符种类、密码最小长度、密码有效期策略和密码最短使用时间策略等。
{
	"Version": "5.0",
	"Statement": [{
		"Effect": "Allow",
		"Action": [
			"iam:securitypolicies:getPasswordPolicyV5",
			"iam:securitypolicies:updatePasswordPolicyV5"
		]
	}]
}

允许用户执行所有的IAM操作

以下身份策略示例允许用户在IAM中执行所有操作,包括管理密码、访问密钥、MFA设备等。

当您向用户授予对IAM的完全访问权时,对用户可以向自己或他人授予的权限将没有限制。用户可以创建新的IAM主体(用户或信任委托)并授予这些主体对您账号中所有资源的完全访问权限。您向用户授予对IAM的完全访问权限时,实际上是向用户授予对您账号中所有资源的完全访问权限,其中包括删除所有资源的权限。您应该仅将这些权限授予信任的管理员,还应对这些管理员强制采用多因素认证 (MFA)。

{
	"Version": "5.0",
	"Statement": [{
		"Effect": "Allow",
		"Action": [
			"IAM:*:*"
		]
	}]
}

相关文档