AWS::IAM::User - AWS CloudFormation
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS::IAM::User

为您的 AWS 账户创建新的 IAM 用户。

有关可创建的 IAM 用户数的限制信息,请参阅 IAM 用户指南 中的 IAM 实体的限制

语法

要在 AWS CloudFormation 模板中声明此实体,请使用以下语法:

JSON

{ "Type" : "AWS::IAM::User", "Properties" : { "Groups" : [ String, ... ], "LoginProfile" : LoginProfile, "ManagedPolicyArns" : [ String, ... ], "Path" : String, "PermissionsBoundary" : String, "Policies" : [ Policy, ... ], "Tags" : [ Tag, ... ], "UserName" : String } }

YAML

Type: AWS::IAM::User Properties: Groups: - String LoginProfile: LoginProfile ManagedPolicyArns: - String Path: String PermissionsBoundary: String Policies: - Policy Tags: - Tag UserName: String

属性

Groups

您要向其添加用户的组的列表。

必需:否

类型:字符串列表

Update requires: No interruption

LoginProfile

为指定的用户创建密码,从而使用户能够通过 AWS 管理控制台访问 AWS 服务。有关管理密码的更多信息,请参阅 IAM 用户指南 中的管理密码

必需:否

类型LoginProfile

Update requires: No interruption

ManagedPolicyArns

您要附加到用户的 IAM 托管策略的 Amazon 资源名称 (ARN) 的列表。

有关 ARN 的更多信息,请参阅 AWS 一般参考 中的 Amazon 资源名称 (ARN) 和 AWS 服务命名空间

必需:否

类型:字符串列表

Update requires: No interruption

Path

用户名称的路径。有关路径的更多信息,请参阅 IAM 用户指南 中的 IAM 标识符

此参数为可选项。如果不指定路径,则默认为斜杠 (/)。

此参数允许(通过其正则表达式模式)使用字符串,该字符串由斜杠 (/) 本身组成,或者必须为以斜杠开头和结尾的字符串。此外,它可以包含从 ! (\u0021) 到 DEL 字符 (\u007F) 的任意 ASCII 字符,包括大多数标点符号字符、数字以及大写和小写字母。

必需:否

类型:字符串

最低1

最高512

模式(\u002F)|(\u002F[\u0021-\u007F]+\u002F)

Update requires: No interruption

PermissionsBoundary

用于为用户设置权限边界的策略的 ARN。

必需:否

类型:字符串

Update requires: No interruption

Policies

添加或更新嵌入在指定 IAM 用户中的内联策略文档。要查看 AWS::IAM::User 代码段,请参阅声明 IAM 用户资源

重要

角色、用户或组的每个策略的名称必须唯一。如果您不选择唯一名称,更新 IAM 身份将失败。

有关可以嵌入用户的内联策略数量限制的信息,请参阅 IAM 用户指南 中的 IAM 实体的限制

必需:否

类型策略的列表

Update requires: No interruption

Tags

您要附加到新创建的用户的标签的列表。每个标签包含键名称和关联的值。有关标记的更多信息,请参阅 IAM 用户指南中的标记 IAM 身份

注意

如果任何一个标签无效,或者您超过每个用户允许的标签数,整个请求将失败而不会创建用户。

必需:否

类型Tag 的列表

最高50

Update requires: No interruption

UserName

要创建的用户的名称。请勿在此值中包含路径。

该参数允许(通过其正则表达式模式)使用由大小写字母数字字符组成的字符串(不包含空格)。此外,还可以包含以下任何字符:_+=,.@-。账户中的用户名必须唯一。用户名称不区分大小写。例如,您无法同时创建名为“John”和“john”的用户。

如果不指定名称,则 AWS CloudFormation 会生成一个唯一的物理 ID 并将该 ID 用作用户名。

如果指定了名称,则必须指定 CAPABILITY_NAMED_IAM 值以确认模板的功能。有关更多信息,请参阅确认 AWS CloudFormation 模板中的 IAM 资源

重要

如果您在多个区域中重用同一模板,则为 IAM 资源命名会导致无法恢复的错误。为防止出现此情况,建议您使用 Fn::JoinAWS::Region 创建特定于区域的名称,如以下示例所示:{"Fn::Join": ["", [{"Ref": "AWS::Region"}, {"Ref": "MyResourceName"}]]}

必需:否

类型:字符串

Update requires: Replacement

返回值

Ref

在将此资源的逻辑 ID 传递给内部 Ref 函数时,Ref 返回 UserName。例如:mystack-myuser-1CCXAFG2H2U4D

For more information about using the Ref function, see Ref.

Fn::GetAtt

Fn::GetAtt 内部函数返回此类型的一个指定属性的值。以下为可用属性和示例返回值。

有关使用 Fn::GetAtt 内部函数的更多信息,请参阅 Fn::GetAtt

Arn

返回指定 AWS::IAM::User 资源的 Amazon 资源名称 (ARN)。例如:arn:aws:iam::123456789012:user/mystack-myuser-1CCXAFG2H2U4D

示例

User

在该示例中,创建一个名为“MyUser”的用户。

JSON

{ "AWSTemplateFormatVersion": "2010-09-09", "Resources" : { "MyUser" : { "Type" : "AWS::IAM::User", "Properties" : { "LoginProfile": { "Password": { "Ref" : "MyPassword" } } } } } }

YAML

AWSTemplateFormatVersion: '2010-09-09' Resources: MyUser: Type: AWS::IAM::User Properties: LoginProfile: Password: Ref: MyPassword

另请参阅