Skip to content
v2.274.0

UserProps Struct ​

Properties for defining an IAM user.

Example ​

ts
    const user = new User(this, 'MyUser', { password: SecretValue.plainText('1234') });
    const group = new Group(this, 'MyGroup');

    const policy = new Policy(this, 'MyPolicy');
    policy.attachToUser(user);
    group.attachInlinePolicy(policy);

Properties ​

groupsIGroup[]groupstyping.List[IGroup]groupsList<IGroup>GroupsIGroup[]Groups*[]IGroup#
Groups to add this user to.

Default: No groups.

You can also use addToGroup to add this user to a group.

managedPoliciesIManagedPolicy[]managed_policiestyping.List[IManagedPolicy]managedPoliciesList<IManagedPolicy>ManagedPoliciesIManagedPolicy[]ManagedPolicies*[]IManagedPolicy#
A list of managed policies associated with this role.

Default: No managed policies.

You can add managed policies later using addManagedPolicy(ManagedPolicy.fromAwsManagedPolicyName(policyName)).

passwordSecretValuepasswordSecretValuepasswordSecretValuePasswordSecretValuePasswordSecretValue#
The password for the user. This is required so the user can access the AWS Management Console.

Default: User won't be able to access the management console without a password.

You can use SecretValue.unsafePlainText to specify a password in plain text or use secretsmanager.Secret.fromSecretAttributes to reference a secret in Secrets Manager.

passwordResetRequiredbooleanpassword_reset_requiredboolpasswordResetRequiredBooleanPasswordResetRequiredboolPasswordResetRequired*bool= false#
Specifies whether the user is required to set a new password the next time the user logs in to the AWS Management Console.

If this is set to 'true', you must also specify "initialPassword".

pathstringpathstrpathStringPathstringPath*string= /#
The path for the user name.

For more information about paths, see IAM Identifiers in the IAM User Guide.

permissionsBoundaryIManagedPolicypermissions_boundaryIManagedPolicypermissionsBoundaryIManagedPolicyPermissionsBoundaryIManagedPolicyPermissionsBoundaryIManagedPolicy#
AWS supports permissions boundaries for IAM entities (users or roles).

Default: No permissions boundary.

notes

A permissions boundary is an advanced feature for using a managed policy to set the maximum permissions that an identity-based policy can grant to an IAM entity. An entity's permissions boundary allows it to perform only the actions that are allowed by both its identity-based policies and its permissions boundaries.

userNamestringuser_namestruserNameStringUserNamestringUserName*string#
A name for the IAM user.

Default: Generated by CloudFormation (recommended)

notes

For valid values, see the UserName parameter for the CreateUser action in the IAM API Reference. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the user name.

If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.

If you specify a name, you must specify the CAPABILITY_NAMED_IAM value to acknowledge your template's capabilities. For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates.