AwsIamUserArgs
interface AwsIamUserArgs extends Omit<AwsIamUserResourceArgs, 'name'> {
accessKeys?: Record<string, AwsIamUserAccessKeyArgs>;
forceDestroy?: Input<boolean | undefined>;
managedPolicies?: Record<string, AwsIamPolicyReference>;
managedPolicyArns?: Record<string, Input<string>>;
name: string;
path?: Input<string | undefined>;
permissionsBoundary?: Input<string | undefined>;
tags?: Input<{ [key: string]: Input<string> } | undefined>;
}User inputs for AwsIam that allow referencing managed policies by object.
Remarks
Managed access keys expose only non-secret metadata through userAccessKeys outputs. The component does not configure provider PGP encryption for access-key creation because no shared PGP key is available for all consumers.
Example
const user = new AwsIam({
user: {
name: 'automationUser',
accessKeys: {
'2026': { status: 'Active' },
'2027': { status: 'Inactive' },
},
},
});
export const accessKey2026Id = user.userAccessKeys?.['2026']?.id;Hierarchy
Omit<AwsIamUserResourceArgs, "name">AwsIamUserArgs
Properties
accessKeys: Record<string, AwsIamUserAccessKeyArgs>
Inherited from accessKeys
Optional IAM access keys keyed by stable, consumer-defined identities. AWS allows up to two active or inactive access keys per user.
forceDestroy: Input<boolean | undefined>
Inherited from forceDestroy
When destroying this user, destroy even if it has non-provider-managed IAM access keys, login profile or MFA devices. Without forceDestroy a user with non-provider-managed access keys and login profile will fail to be destroyed.
managedPolicies: Record<string, AwsIamPolicyReference>
Optional policy references for user attachment.
Remarks
You may pass AwsIam policy components, IAM policy objects created by this package, or direct ARN/name inputs.
managedPolicyArns: Record<string, Input<string>>
Optional managed policy references (ARNs or AWS managed policy names) to attach to the user.
name: string
Plain-string user name used as the logical identity source for the AwsIam user capability.
path: Input<string | undefined>
Inherited from path
Path in which to create the user.
permissionsBoundary: Input<string | undefined>
Inherited from permissionsBoundary
The ARN of the policy that is used to set the permissions boundary for the user.
tags: Input<{ [key: string]: Input<string> } | undefined>
Inherited from tags
Key-value mapping of tags for the IAM user. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.