AwsIamUserResourceArgs

interface AwsIamUserResourceArgs extends Omit<aws.iam.UserArgs, 'name' | 'namePrefix'> { accessKeys?: Record<string, AwsIamUserAccessKeyArgs>; forceDestroy?: Input<boolean | undefined>; name: string; path?: Input<string | undefined>; permissionsBoundary?: Input<string | undefined>; tags?: Input<{ [key: string]: Input<string> } | undefined>; }

Input arguments for AwsIamUser.

Remarks

This type maps directly to aws.iam.UserArgs with one change:

  • name is required and treated as the user purpose in the AWS naming pattern.
  • accessKeys creates one or more IAM access keys for the user and exposes only non-secret metadata. When access keys are configured, name must be a plain string because it is part of each access key's Pulumi logical identity together with the accessKeys map key.

Example

CODE
const args: AwsIamUserResourceArgs = {
  name: 'appAutomationUser',
  accessKeys: {
    2026: { status: 'Active' },
  },
};

Hierarchy

  • UserArgs, "name" | "namePrefix">
  • AwsIamUserResourceArgs

Properties

accessKeys: Record<string, AwsIamUserAccessKeyArgs>

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.

name: string

Required user purpose name used in the AWS naming pattern.

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.