AWS IAM

AWS Identity and Access Management (IAM) controls access to AWS resources. Use this integration to manage users, roles, policies, groups, and access keys, or simulate a principal’s permissions before changing them.

Policy simulation deserves a note, because AWS's model is easy to misread. Simulate Principal Policy returns one result per action regardless of how many resource ARNs you pass. The top-level decision is the aggregate across every resource — most restrictive wins — and the top-level resource name is an ARN template for the resource type, not one of your ARNs. Per-resource answers live in resourceSpecificResults, and when you supply concrete ARNs, missing context keys are reported there too rather than at the top level. Read resourceSpecificResults whenever you simulate against more than one resource: the aggregate alone will tell you a principal is denied when it is in fact allowed on some of them.

The secret half of a new access key is returned once and is hidden from block output display and execution logs. It stays resolvable downstream, so rotation workflows can pass it straight to the system that needs it — but a block you pass it into will log it under that block's own inputs.

Usage Instructions

Integrate AWS Identity and Access Management into your workflow. Create and manage users, roles, policies, groups, and access keys.

Actions

IAM List Users

List IAM users in your AWS account

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
pathPrefixstringNoPath prefix to filter users (e.g., /division_abc/)
maxItemsnumberNoMaximum number of users to return (1-1000, default 100)
markerstringNoPagination marker from a previous request

Output

ParameterTypeDescription
usersjsonList of IAM users with userName, userId, arn, path, and dates
isTruncatedbooleanWhether there are more results available
markerstringPagination marker for the next page of results
countnumberNumber of users returned

IAM Get User

Get detailed information about an IAM user

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
userNamestringNoThe name of the IAM user to retrieve (defaults to the caller if omitted)

Output

ParameterTypeDescription
userNamestringThe name of the user
userIdstringThe unique ID of the user
arnstringThe ARN of the user
pathstringThe path to the user
createDatestringDate the user was created
passwordLastUsedstringDate the password was last used
permissionsBoundaryArnstringARN of the permissions boundary policy
tagsjsonTags attached to the user (key, value pairs)

IAM Create User

Create a new IAM user

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
userNamestringYesName for the new IAM user (1-64 characters)
pathstringNoPath for the user (e.g., /division_abc/), defaults to /

Output

ParameterTypeDescription
messagestringOperation status message
userNamestringThe name of the created user
userIdstringThe unique ID of the created user
arnstringThe ARN of the created user
pathstringThe path of the created user
createDatestringDate the user was created

IAM Delete User

Delete an IAM user

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
userNamestringYesThe name of the IAM user to delete

Output

ParameterTypeDescription
messagestringOperation status message

IAM List Roles

List IAM roles in your AWS account

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
pathPrefixstringNoPath prefix to filter roles (e.g., /application/)
maxItemsnumberNoMaximum number of roles to return (1-1000, default 100)
markerstringNoPagination marker from a previous request

Output

ParameterTypeDescription
rolesjsonList of IAM roles with roleName, roleId, arn, path, and dates
isTruncatedbooleanWhether there are more results available
markerstringPagination marker for the next page of results
countnumberNumber of roles returned

IAM Get Role

Get detailed information about an IAM role

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
roleNamestringYesThe name of the IAM role to retrieve

Output

ParameterTypeDescription
roleNamestringThe name of the role
roleIdstringThe unique ID of the role
arnstringThe ARN of the role
pathstringThe path to the role
createDatestringDate the role was created
descriptionstringDescription of the role
maxSessionDurationnumberMaximum session duration in seconds
assumeRolePolicyDocumentstringThe trust policy document (JSON)
roleLastUsedDatestringDate the role was last used
roleLastUsedRegionstringAWS region where the role was last used

IAM Create Role

Create a new IAM role with a trust policy

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
roleNamestringYesName for the new IAM role (1-64 characters)
assumeRolePolicyDocumentstringYesTrust policy JSON specifying who can assume this role
descriptionstringNoDescription of the role
pathstringNoPath for the role (e.g., /application/), defaults to /
maxSessionDurationnumberNoMaximum session duration in seconds (3600-43200, default 3600)

Output

ParameterTypeDescription
messagestringOperation status message
roleNamestringThe name of the created role
roleIdstringThe unique ID of the created role
arnstringThe ARN of the created role
pathstringThe path of the created role
createDatestringDate the role was created

IAM Delete Role

Delete an IAM role

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
roleNamestringYesThe name of the IAM role to delete

Output

ParameterTypeDescription
messagestringOperation status message

IAM Attach User Policy

Attach a managed policy to an IAM user

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
userNamestringYesThe name of the IAM user
policyArnstringYesThe ARN of the managed policy to attach

Output

ParameterTypeDescription
messagestringOperation status message

IAM Detach User Policy

Remove a managed policy from an IAM user

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
userNamestringYesThe name of the IAM user
policyArnstringYesThe ARN of the managed policy to detach

Output

ParameterTypeDescription
messagestringOperation status message

IAM Attach Role Policy

Attach a managed policy to an IAM role

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
roleNamestringYesThe name of the IAM role
policyArnstringYesThe ARN of the managed policy to attach

Output

ParameterTypeDescription
messagestringOperation status message

IAM Detach Role Policy

Remove a managed policy from an IAM role

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
roleNamestringYesThe name of the IAM role
policyArnstringYesThe ARN of the managed policy to detach

Output

ParameterTypeDescription
messagestringOperation status message

IAM List Policies

List managed IAM policies

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
scopestringNoFilter by scope. Must be exactly one of: All, AWS (AWS-managed), Local (customer-managed)
onlyAttachedbooleanNoIf true, only return policies attached to an entity
pathPrefixstringNoPath prefix to filter policies
maxItemsnumberNoMaximum number of policies to return (1-1000, default 100)
markerstringNoPagination marker from a previous request

Output

ParameterTypeDescription
policiesjsonList of policies with policyName, policyId, arn, path, attachmentCount, isAttachable, defaultVersionId, permissionsBoundaryUsageCount, and dates. AWS never returns policy descriptions from ListPolicies — use IAM Get Policy for a description.
isTruncatedbooleanWhether there are more results available
markerstringPagination marker for the next page of results
countnumberNumber of policies returned

IAM Get Policy

Get details about a managed IAM policy, including its description — the field ListPolicies never returns

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
policyArnstringYesARN of the managed policy to retrieve (e.g., arn:aws:iam::aws:policy/ReadOnlyAccess)

Output

ParameterTypeDescription
policyNamestringThe friendly name of the policy
policyIdstringThe stable unique ID of the policy
arnstringThe ARN of the policy
pathstringThe path to the policy
attachmentCountnumberNumber of entities the policy is attached to
isAttachablebooleanWhether the policy can be attached
createDatestringDate the policy was created
updateDatestringDate the policy was last updated
descriptionstringThe policy description
defaultVersionIdstringThe identifier of the default policy version
permissionsBoundaryUsageCountnumberNumber of entities using the policy as a permissions boundary
tagsjsonTags attached to the policy (key, value pairs)

IAM Create Access Key

Create a new access key pair for an IAM user

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
userNamestringNoThe IAM user to create the key for (defaults to current user)

Output

ParameterTypeDescription
messagestringOperation status message
accessKeyIdstringThe new access key ID
secretAccessKeystringThe new secret access key (only shown once)
userNamestringThe user the key was created for
statusstringStatus of the access key (Active)
createDatestringDate the key was created

IAM Delete Access Key

Delete an access key pair for an IAM user

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
accessKeyIdToDeletestringYesThe access key ID to delete
userNamestringNoThe IAM user whose key to delete (defaults to current user)

Output

ParameterTypeDescription
messagestringOperation status message

IAM List Access Keys

List an IAM user's access key IDs with their status and age — use to find stale keys and to confirm which keys remain after a rotation

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
userNamestringNoThe IAM user whose keys to list (defaults to the calling user if omitted)
maxItemsnumberNoMaximum number of access keys to return (1-1000)
markerstringNoPagination marker from a previous request

Output

ParameterTypeDescription
accessKeysjsonAccess key metadata: accessKeyId, userName, status (Active/Inactive), createDate. The secret access key is never returned by this operation.
isTruncatedbooleanWhether there are more results available
markerstringPagination marker for the next page of results
countnumberNumber of access keys returned

IAM Update Access Key

Activate or deactivate an IAM access key — deactivate an old key and verify nothing breaks before deleting it

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
accessKeyIdToUpdatestringYesThe access key ID whose status to change
statusstringYesThe status to set. Must be exactly one of: Active, Inactive. An Inactive key is rejected by AWS but can be reactivated.
userNamestringNoThe IAM user that owns the key (defaults to the calling user if omitted)

Output

ParameterTypeDescription
messagestringOperation status message

IAM List Groups

List IAM groups in your AWS account

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
pathPrefixstringNoPath prefix to filter groups
maxItemsnumberNoMaximum number of groups to return (1-1000, default 100)
markerstringNoPagination marker from a previous request

Output

ParameterTypeDescription
groupsjsonList of IAM groups with groupName, groupId, arn, and path
isTruncatedbooleanWhether there are more results available
markerstringPagination marker for the next page of results
countnumberNumber of groups returned

IAM Add User to Group

Add an IAM user to a group

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
userNamestringYesThe name of the IAM user
groupNamestringYesThe name of the IAM group

Output

ParameterTypeDescription
messagestringOperation status message

IAM Remove User from Group

Remove an IAM user from a group

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
userNamestringYesThe name of the IAM user
groupNamestringYesThe name of the IAM group

Output

ParameterTypeDescription
messagestringOperation status message

IAM List Attached Role Policies

List all managed policies attached to an IAM role

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
roleNamestringYesName of the IAM role
pathPrefixstringNoPath prefix to filter policies (e.g., /application/)
maxItemsnumberNoMaximum number of policies to return (1-1000)
markerstringNoPagination marker from a previous request

Output

ParameterTypeDescription
attachedPoliciesjsonList of attached policies with policyName and policyArn
isTruncatedbooleanWhether there are more results available
markerstringPagination marker for the next page of results
countnumberNumber of attached policies returned

IAM List Attached User Policies

List all managed policies attached to an IAM user

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
userNamestringYesName of the IAM user
pathPrefixstringNoPath prefix to filter policies (e.g., /application/)
maxItemsnumberNoMaximum number of policies to return (1-1000)
markerstringNoPagination marker from a previous request

Output

ParameterTypeDescription
attachedPoliciesjsonList of attached policies with policyName and policyArn
isTruncatedbooleanWhether there are more results available
markerstringPagination marker for the next page of results
countnumberNumber of attached policies returned

IAM Simulate Principal Policy

Simulate whether a user, role, or group is allowed to perform specific AWS actions — useful for pre-flight access checks

Input

ParameterTypeRequiredDescription
regionstringYesAWS region (e.g., us-east-1)
accessKeyIdstringYesAWS access key ID
secretAccessKeystringYesAWS secret access key
policySourceArnstringYesARN of the user, group, or role to simulate (e.g., arn:aws:iam::123456789012:user/alice)
actionNamesstringYesComma-separated list of AWS actions to simulate (e.g., s3:GetObject,ec2:DescribeInstances)
resourceArnsstringNoComma-separated list of resource ARNs to simulate against (defaults to * if not provided). Read the per-ARN verdict from resourceSpecificResults, not from evalDecision.
contextEntriesarrayNoCondition context keys to supply to the simulation. Without these, any policy gated by a Condition simulates as denied with missing context values.
maxResultsnumberNoMaximum number of simulation results to return (1-1000)
markerstringNoPagination marker from a previous request

Output

ParameterTypeDescription
evaluationResultsjsonOne result per simulated action. evalDecision is the AGGREGATE, most-restrictive decision across every resource ARN, and evalResourceName is the resource-type ARN template (e.g. an arn:aws:s3:::BUCKET/KEY shape with the bucket and key left as placeholders), not a customer ARN. For the verdict on an individual ARN read resourceSpecificResults[]: evalResourceName, evalResourceDecision (allowed/explicitDeny/implicitDeny), matchedStatements, missingContextValues, permissionsBoundaryAllowed. When concrete resource ARNs are supplied, missing context values appear there rather than at the top level.
isTruncatedbooleanWhether there are more results available
markerstringPagination marker for the next page of results
countnumberNumber of evaluation results returned