ALIYUN::RAM::User类型用于创建RAM用户。
语法
{
"Type": "ALIYUN::RAM::User",
"Properties": {
"UserName": String,
"DisplayName": String,
"LoginProfile": Map,
"Groups": List,
"MobilePhone": String,
"Email": String,
"Comments": String,
"Policies": List,
"PolicyAttachments": Map,
"DeletionForce": Boolean
}
}
属性
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
UserName |
String |
是 |
否 |
RAM用户的名称。 |
长度为1~64个字符,可包含英文字母、数字、半角句号(.)、短划线(-)和下划线(_)。 |
DisplayName |
String |
否 |
否 |
RAM用户的显示名称。 |
长度为1~128个字符。 |
LoginProfile |
Map |
否 |
否 |
RAM用户的登录配置。 |
更多信息,请参见LoginProfile属性。
|
Groups |
List |
否 |
否 |
RAM用户加入的用户组。 |
无 |
MobilePhone |
String |
否 |
否 |
RAM用户的手机号码。 |
无 |
Email |
String |
否 |
否 |
RAM用户的邮箱。 |
无 |
Comments |
String |
否 |
否 |
备注。 |
长度为1~128个字符。 |
Policies |
List |
否 |
是 |
适用于RAM用户的权限策略。 |
更多信息,请参见Policies属性。
|
PolicyAttachments |
Map |
否 |
是 |
要添加的系统策略和自定义策略名称。 |
更多信息,请参见PolicyAttachments属性。
|
DeletionForce |
Boolean |
否 |
是 |
是否强制解绑RAM用户的权限策略。 |
取值:
- true:强制解绑。
- false(默认值):不强制解绑。
|
LoginProfile语法
"LoginProfile": {
"MFABindRequired": Boolean,
"Password": String,
"PasswordResetRequired": Boolean
}
LoginProfile属性
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
MFABindRequired |
Boolean |
否 |
否 |
是否强制要求RAM用户开启多因素认证。 |
取值:
- true:要求开启。RAM用户在下次登录时必须绑定多因素认证设备。
- false:不要求开启。
|
Password |
String |
否 |
否 |
RAM用户的控制台登录新密码。 |
密码必须符合密码强度要求,长度为8~32个字符。 |
PasswordResetRequired |
Boolean |
否 |
否 |
RAM用户在下次登录时是否必须重置密码。 |
取值:
- true:必须重置密码。
- false:无需重置密码。
|
Policies语法
"Policies": [
{
"PolicyName": String,
"PolicyDocument": Map,
"Description": String
}
]
Policies属性
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
Description |
String |
否 |
否 |
描述。 |
长度为1~1024个字符。 |
PolicyName |
String |
是 |
否 |
权限策略名称。 |
长度为1~128个字符,可包含英文字母、数字和短划线(-)。 |
PolicyDocument |
Map |
是 |
是 |
权限策略内容。 |
长度不超过2048个字符。
更多信息,请参见PolicyDocument属性。
|
PolicyDocument语法
"PolicyDocument": {
"Version": String,
"Statement": List
}
PolicyDocument属性
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
Version |
String |
否 |
否 |
权限策略版本。 |
无 |
Statement |
List |
否 |
否 |
权限策略具体规则。 |
更多信息,请参见Statement属性。
|
Statement语法
"Statement": [
{
"Condition": Map,
"Action": List,
"Resource": List,
"Effect": String
}
]
Statement属性
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
Condition |
Map |
否 |
否 |
授权生效的限制条件。 |
无 |
Action |
List |
否 |
否 |
权限策略针对的具体操作。 |
无 |
Resource |
List |
否 |
否 |
权限策略针对的具体资源。 |
无 |
Effect |
String |
否 |
否 |
授权效力。 |
取值:
|
PolicyAttachments语法
"PolicyAttachments": {
"Custom": List,
"System": List
}
PolicyAttachments属性
属性名称 |
类型 |
必须 |
允许更新 |
描述 |
约束 |
Custom |
List |
否 |
是 |
自定义策略名称列表。 |
策略数量小于等于5。 |
System |
List |
否 |
是 |
系统策略名称列表。 |
策略数量小于等于20。 |
返回值
Fn::GetAtt
- UserName:RAM用户名称。
- UserId:RAM用户ID。
- CreateDate:RAM用户创建时间。
- LastLoginDate:RAM用户最后登录时间。
示例
JSON
格式
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": "Test RAM User、Group、AttachPolicyToUser、UserToGroupAddition",
"Parameters": {
"UserName": {
"Type": "String",
"Description": "The maximum length is 64 characters, English letters, numbers, ., _ or - are allowed."
},
"GroupName": {
"Type": "String",
"Description": "The maximum length is 64 characters, English letters, numbers, ., _ or - are allowed."
}
},
"Resources": {
"User": {
"Type": "ALIYUN::RAM::User",
"Properties": {
"UserName": {
"Ref": "UserName"
}
}
},
"Group": {
"Type": "ALIYUN::RAM::Group",
"Properties": {
"GroupName": {
"Ref": "GroupName"
},
"Comments": "test group",
"Policies": [
{
"PolicyName": {
"Fn::Sub": "GroupPolicy-${ALIYUN::StackId}"
},
"PolicyDocument": {
"Version": "1",
"Statement": [
{
"Action": [
"oss:Get*"
],
"Resource": [
"*"
],
"Effect": "Allow"
}
]
}
}
]
}
},
"AttachPolicyToUser": {
"Type": "ALIYUN::RAM::AttachPolicyToUser",
"Properties": {
"PolicyType": "System",
"UserName": {
"Fn::GetAtt": [
"User",
"UserName"
]
},
"PolicyName": "AliyunECSReadOnlyAccess"
}
},
"UserToGroupAddition": {
"Type": "ALIYUN::RAM::UserToGroupAddition",
"Properties": {
"GroupName": {
"Fn::GetAtt": [
"Group",
"GroupName"
]
},
"Users": [
{
"Fn::GetAtt": [
"User",
"UserName"
]
}
]
}
}
},
"Outputs": {
"GroupName": {
"Value": {
"Fn::GetAtt": [
"Group",
"GroupName"
]
}
},
"UserName": {
"Description": "Name of ram user.",
"Value": {
"Fn::GetAtt": [
"User",
"UserName"
]
}
},
"CreateDate": {
"Description": "Create date of ram user.",
"Value": {
"Fn::GetAtt": [
"User",
"CreateDate"
]
}
},
"UserId": {
"Description": "Id of ram user.",
"Value": {
"Fn::GetAtt": [
"User",
"UserId"
]
}
},
"LastLoginDate": {
"Description": "Last login date of ram user.",
"Value": {
"Fn::GetAtt": [
"User",
"LastLoginDate"
]
}
}
}
}
更多示例,请参见创建RAM用户、创建RAM用户组、为指定RAM用户添加权限和添加RAM用户到用户组的组合示例:JSON示例和YAML示例。