IAM class

AWS Identity and Access Management (IAM) is a web service for securely controlling access to AWS services. With IAM, you can centrally manage users, security credentials such as access keys, and permissions that control which AWS resources users and applications can access. For more information about IAM, see AWS Identity and Access Management (IAM) and the AWS Identity and Access Management User Guide.

Constructors

IAM({String? region, AwsClientCredentials? credentials, AwsClientCredentialsProvider? credentialsProvider, Client? client, String? endpointUrl})

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
shapes Map<String, Shape>
final

Methods

addClientIDToOpenIDConnectProvider({required String clientID, required String openIDConnectProviderArn}) Future<void>
Adds a new client ID (also known as audience) to the list of client IDs already registered for the specified IAM OpenID Connect (OIDC) provider resource.
addRoleToInstanceProfile({required String instanceProfileName, required String roleName}) Future<void>
Adds the specified IAM role to the specified instance profile. An instance profile can contain only one role. (The number and size of IAM resources in an AWS account are limited. For more information, see IAM and STS Quotas in the IAM User Guide.) You can remove the existing role and then add a different role to an instance profile. You must then wait for the change to appear across all of AWS because of eventual consistency. To force the change, you must disassociate the instance profile and then associate the instance profile, or you can stop your instance and then restart it. For more information about roles, go to Working with Roles. For more information about instance profiles, go to About Instance Profiles.
addUserToGroup({required String groupName, required String userName}) Future<void>
Adds the specified user to the specified group.
attachGroupPolicy({required String groupName, required String policyArn}) Future<void>
Attaches the specified managed policy to the specified IAM group.
attachRolePolicy({required String policyArn, required String roleName}) Future<void>
Attaches the specified managed policy to the specified IAM role. When you attach a managed policy to a role, the managed policy becomes part of the role's permission (access) policy. Use this API to attach a managed policy to a role. To embed an inline policy in a role, use PutRolePolicy. For more information about policies, see Managed Policies and Inline Policies in the IAM User Guide.
attachUserPolicy({required String policyArn, required String userName}) Future<void>
Attaches the specified managed policy to the specified user.
changePassword({required String newPassword, required String oldPassword}) Future<void>
Changes the password of the IAM user who is calling this operation. The AWS account root user password is not affected by this operation.
close() → void
Closes the internal HTTP client if none was provided at creation. If a client was passed as a constructor argument, this becomes a noop.
createAccessKey({String? userName}) Future<CreateAccessKeyResponse>
Creates a new AWS secret access key and corresponding AWS access key ID for the specified user. The default status for new keys is Active.
createAccountAlias({required String accountAlias}) Future<void>
Creates an alias for your AWS account. For information about using an AWS account alias, see Using an Alias for Your AWS Account ID in the IAM User Guide.
createGroup({required String groupName, String? path}) Future<CreateGroupResponse>
Creates a new group.
createInstanceProfile({required String instanceProfileName, String? path}) Future<CreateInstanceProfileResponse>
Creates a new instance profile. For information about instance profiles, go to About Instance Profiles.
createLoginProfile({required String password, required String userName, bool? passwordResetRequired}) Future<CreateLoginProfileResponse>
Creates a password for the specified user, giving the user the ability to access AWS services through the AWS Management Console. For more information about managing passwords, see Managing Passwords in the IAM User Guide.
createOpenIDConnectProvider({required List<String> thumbprintList, required String url, List<String>? clientIDList}) Future<CreateOpenIDConnectProviderResponse>
Creates an IAM entity to describe an identity provider (IdP) that supports OpenID Connect (OIDC).
createPolicy({required String policyDocument, required String policyName, String? description, String? path}) Future<CreatePolicyResponse>
Creates a new managed policy for your AWS account.
createPolicyVersion({required String policyArn, required String policyDocument, bool? setAsDefault}) Future<CreatePolicyVersionResponse>
Creates a new version of the specified managed policy. To update a managed policy, you create a new policy version. A managed policy can have up to five versions. If the policy has five versions, you must delete an existing version using DeletePolicyVersion before you create a new version.
createRole({required String assumeRolePolicyDocument, required String roleName, String? description, int? maxSessionDuration, String? path, String? permissionsBoundary, List<Tag>? tags}) Future<CreateRoleResponse>
Creates a new role for your AWS account. For more information about roles, go to IAM Roles. The number and size of IAM resources in an AWS account are limited. For more information, see IAM and STS Quotas in the IAM User Guide.
createSAMLProvider({required String name, required String sAMLMetadataDocument}) Future<CreateSAMLProviderResponse>
Creates an IAM resource that describes an identity provider (IdP) that supports SAML 2.0.
createServiceLinkedRole({required String awsServiceName, String? customSuffix, String? description}) Future<CreateServiceLinkedRoleResponse>
Creates an IAM role that is linked to a specific AWS service. The service controls the attached policies and when the role can be deleted. This helps ensure that the service is not broken by an unexpectedly changed or deleted role, which could put your AWS resources into an unknown state. Allowing the service to control the role helps improve service stability and proper cleanup when a service and its role are no longer needed. For more information, see Using Service-Linked Roles in the IAM User Guide.
createServiceSpecificCredential({required String serviceName, required String userName}) Future<CreateServiceSpecificCredentialResponse>
Generates a set of credentials consisting of a user name and password that can be used to access the service specified in the request. These credentials are generated by IAM, and can be used only for the specified service.
createUser({required String userName, String? path, String? permissionsBoundary, List<Tag>? tags}) Future<CreateUserResponse>
Creates a new IAM user for your AWS account.
createVirtualMFADevice({required String virtualMFADeviceName, String? path}) Future<CreateVirtualMFADeviceResponse>
Creates a new virtual MFA device for the AWS account. After creating the virtual MFA, use EnableMFADevice to attach the MFA device to an IAM user. For more information about creating and working with virtual MFA devices, go to Using a Virtual MFA Device in the IAM User Guide.
deactivateMFADevice({required String serialNumber, required String userName}) Future<void>
Deactivates the specified MFA device and removes it from association with the user name for which it was originally enabled.
deleteAccessKey({required String accessKeyId, String? userName}) Future<void>
Deletes the access key pair associated with the specified IAM user.
deleteAccountAlias({required String accountAlias}) Future<void>
Deletes the specified AWS account alias. For information about using an AWS account alias, see Using an Alias for Your AWS Account ID in the IAM User Guide.
deleteAccountPasswordPolicy() Future<void>
Deletes the password policy for the AWS account. There are no parameters.
deleteGroup({required String groupName}) Future<void>
Deletes the specified IAM group. The group must not contain any users or have any attached policies.
deleteGroupPolicy({required String groupName, required String policyName}) Future<void>
Deletes the specified inline policy that is embedded in the specified IAM group.
deleteInstanceProfile({required String instanceProfileName}) Future<void>
Deletes the specified instance profile. The instance profile must not have an associated role. For more information about instance profiles, go to About Instance Profiles.
deleteLoginProfile({required String userName}) Future<void>
Deletes the password for the specified IAM user, which terminates the user's ability to access AWS services through the AWS Management Console.
deleteOpenIDConnectProvider({required String openIDConnectProviderArn}) Future<void>
Deletes an OpenID Connect identity provider (IdP) resource object in IAM.
deletePolicy({required String policyArn}) Future<void>
Deletes the specified managed policy.
deletePolicyVersion({required String policyArn, required String versionId}) Future<void>
Deletes the specified version from the specified managed policy.
deleteRole({required String roleName}) Future<void>
Deletes the specified role. The role must not have any policies attached. For more information about roles, go to Working with Roles.
deleteRolePermissionsBoundary({required String roleName}) Future<void>
Deletes the permissions boundary for the specified IAM role.
deleteRolePolicy({required String policyName, required String roleName}) Future<void>
Deletes the specified inline policy that is embedded in the specified IAM role.
deleteSAMLProvider({required String sAMLProviderArn}) Future<void>
Deletes a SAML provider resource in IAM.
deleteServerCertificate({required String serverCertificateName}) Future<void>
Deletes the specified server certificate.
deleteServiceLinkedRole({required String roleName}) Future<DeleteServiceLinkedRoleResponse>
Submits a service-linked role deletion request and returns a DeletionTaskId, which you can use to check the status of the deletion. Before you call this operation, confirm that the role has no active sessions and that any resources used by the role in the linked service are deleted. If you call this operation more than once for the same service-linked role and an earlier deletion task is not complete, then the DeletionTaskId of the earlier request is returned.
deleteServiceSpecificCredential({required String serviceSpecificCredentialId, String? userName}) Future<void>
Deletes the specified service-specific credential.
deleteSigningCertificate({required String certificateId, String? userName}) Future<void>
Deletes a signing certificate associated with the specified IAM user.
deleteSSHPublicKey({required String sSHPublicKeyId, required String userName}) Future<void>
Deletes the specified SSH public key.
deleteUser({required String userName}) Future<void>
Deletes the specified IAM user. Unlike the AWS Management Console, when you delete a user programmatically, you must delete the items attached to the user manually, or the deletion fails. For more information, see Deleting an IAM User. Before attempting to delete a user, remove the following items:
deleteUserPermissionsBoundary({required String userName}) Future<void>
Deletes the permissions boundary for the specified IAM user.
deleteUserPolicy({required String policyName, required String userName}) Future<void>
Deletes the specified inline policy that is embedded in the specified IAM user.
deleteVirtualMFADevice({required String serialNumber}) Future<void>
Deletes a virtual MFA device.
detachGroupPolicy({required String groupName, required String policyArn}) Future<void>
Removes the specified managed policy from the specified IAM group.
detachRolePolicy({required String policyArn, required String roleName}) Future<void>
Removes the specified managed policy from the specified role.
detachUserPolicy({required String policyArn, required String userName}) Future<void>
Removes the specified managed policy from the specified user.
enableMFADevice({required String authenticationCode1, required String authenticationCode2, required String serialNumber, required String userName}) Future<void>
Enables the specified MFA device and associates it with the specified IAM user. When enabled, the MFA device is required for every subsequent login by the IAM user associated with the device.
generateCredentialReport() Future<GenerateCredentialReportResponse>
Generates a credential report for the AWS account. For more information about the credential report, see Getting Credential Reports in the IAM User Guide.
generateOrganizationsAccessReport({required String entityPath, String? organizationsPolicyId}) Future<GenerateOrganizationsAccessReportResponse>
Generates a report for service last accessed data for AWS Organizations. You can generate a report for any entities (organization root, organizational unit, or account) or policies in your organization.
generateServiceLastAccessedDetails({required String arn, AccessAdvisorUsageGranularityType? granularity}) Future<GenerateServiceLastAccessedDetailsResponse>
Generates a report that includes details about when an IAM resource (user, group, role, or policy) was last used in an attempt to access AWS services. Recent activity usually appears within four hours. IAM reports activity for the last 365 days, or less if your Region began supporting this feature within the last year. For more information, see Regions Where Data Is Tracked. The GenerateServiceLastAccessedDetails operation returns a JobId. Use this parameter in the following operations to retrieve the following details from your report:
getAccessKeyLastUsed({required String accessKeyId}) Future<GetAccessKeyLastUsedResponse>
Retrieves information about when the specified access key was last used. The information includes the date and time of last use, along with the AWS service and Region that were specified in the last request made with that key.
getAccountAuthorizationDetails({List<EntityType>? filter, String? marker, int? maxItems}) Future<GetAccountAuthorizationDetailsResponse>
Retrieves information about all IAM users, groups, roles, and policies in your AWS account, including their relationships to one another. Use this API to obtain a snapshot of the configuration of IAM permissions (users, groups, roles, and policies) in your account. You can optionally filter the results using the Filter parameter. You can paginate the results using the MaxItems and Marker parameters.
getAccountPasswordPolicy() Future<GetAccountPasswordPolicyResponse>
Retrieves the password policy for the AWS account. For more information about using a password policy, go to Managing an IAM Password Policy.
getAccountSummary() Future<GetAccountSummaryResponse>
Retrieves information about IAM entity usage and IAM quotas in the AWS account.
getContextKeysForCustomPolicy({required List<String> policyInputList}) Future<GetContextKeysForPolicyResponse>
Gets a list of all of the context keys referenced in the input policies. The policies are supplied as a list of one or more strings. To get the context keys from policies associated with an IAM user, group, or role, use GetContextKeysForPrincipalPolicy.
getContextKeysForPrincipalPolicy({required String policySourceArn, List<String>? policyInputList}) Future<GetContextKeysForPolicyResponse>
Gets a list of all of the context keys referenced in all the IAM policies that are attached to the specified IAM entity. The entity can be an IAM user, group, or role. If you specify a user, then the request also includes all of the policies attached to groups that the user is a member of.
getCredentialReport() Future<GetCredentialReportResponse>
Retrieves a credential report for the AWS account. For more information about the credential report, see Getting Credential Reports in the IAM User Guide.
getGroup({required String groupName, String? marker, int? maxItems}) Future<GetGroupResponse>
Returns a list of IAM users that are in the specified IAM group. You can paginate the results using the MaxItems and Marker parameters.
getGroupPolicy({required String groupName, required String policyName}) Future<GetGroupPolicyResponse>
Retrieves the specified inline policy document that is embedded in the specified IAM group. An IAM group can also have managed policies attached to it. To retrieve a managed policy document that is attached to a group, use GetPolicy to determine the policy's default version, then use GetPolicyVersion to retrieve the policy document.
getInstanceProfile({required String instanceProfileName}) Future<GetInstanceProfileResponse>
Retrieves information about the specified instance profile, including the instance profile's path, GUID, ARN, and role. For more information about instance profiles, see About Instance Profiles in the IAM User Guide.
getLoginProfile({required String userName}) Future<GetLoginProfileResponse>
Retrieves the user name and password-creation date for the specified IAM user. If the user has not been assigned a password, the operation returns a 404 (NoSuchEntity) error.
getOpenIDConnectProvider({required String openIDConnectProviderArn}) Future<GetOpenIDConnectProviderResponse>
Returns information about the specified OpenID Connect (OIDC) provider resource object in IAM.
getOrganizationsAccessReport({required String jobId, String? marker, int? maxItems, SortKeyType? sortKey}) Future<GetOrganizationsAccessReportResponse>
Retrieves the service last accessed data report for AWS Organizations that was previously generated using the GenerateOrganizationsAccessReport operation. This operation retrieves the status of your report job and the report contents.
getPolicy({required String policyArn}) Future<GetPolicyResponse>
Retrieves information about the specified managed policy, including the policy's default version and the total number of IAM users, groups, and roles to which the policy is attached. To retrieve the list of the specific users, groups, and roles that the policy is attached to, use the ListEntitiesForPolicy API. This API returns metadata about the policy. To retrieve the actual policy document for a specific version of the policy, use GetPolicyVersion.
getPolicyVersion({required String policyArn, required String versionId}) Future<GetPolicyVersionResponse>
Retrieves information about the specified version of the specified managed policy, including the policy document. To list the available versions for a policy, use ListPolicyVersions.
getRole({required String roleName}) Future<GetRoleResponse>
Retrieves information about the specified role, including the role's path, GUID, ARN, and the role's trust policy that grants permission to assume the role. For more information about roles, see Working with Roles.
getRolePolicy({required String policyName, required String roleName}) Future<GetRolePolicyResponse>
Retrieves the specified inline policy document that is embedded with the specified IAM role. An IAM role can also have managed policies attached to it. To retrieve a managed policy document that is attached to a role, use GetPolicy to determine the policy's default version, then use GetPolicyVersion to retrieve the policy document.
getSAMLProvider({required String sAMLProviderArn}) Future<GetSAMLProviderResponse>
Returns the SAML provider metadocument that was uploaded when the IAM SAML provider resource object was created or updated.
getServerCertificate({required String serverCertificateName}) Future<GetServerCertificateResponse>
Retrieves information about the specified server certificate stored in IAM.
getServiceLastAccessedDetails({required String jobId, String? marker, int? maxItems}) Future<GetServiceLastAccessedDetailsResponse>
Retrieves a service last accessed report that was created using the GenerateServiceLastAccessedDetails operation. You can use the JobId parameter in GetServiceLastAccessedDetails to retrieve the status of your report job. When the report is complete, you can retrieve the generated report. The report includes a list of AWS services that the resource (user, group, role, or managed policy) can access. For each service that the resource could access using permissions policies, the operation returns details about the most recent access attempt. If there was no attempt, the service is listed without details about the most recent attempt to access the service. If the operation fails, the GetServiceLastAccessedDetails operation returns the reason that it failed.
getServiceLastAccessedDetailsWithEntities({required String jobId, required String serviceNamespace, String? marker, int? maxItems}) Future<GetServiceLastAccessedDetailsWithEntitiesResponse>
After you generate a group or policy report using the GenerateServiceLastAccessedDetails operation, you can use the JobId parameter in GetServiceLastAccessedDetailsWithEntities. This operation retrieves the status of your report job and a list of entities that could have used group or policy permissions to access the specified service.
getServiceLinkedRoleDeletionStatus({required String deletionTaskId}) Future<GetServiceLinkedRoleDeletionStatusResponse>
Retrieves the status of your service-linked role deletion. After you use the DeleteServiceLinkedRole API operation to submit a service-linked role for deletion, you can use the DeletionTaskId parameter in GetServiceLinkedRoleDeletionStatus to check the status of the deletion. If the deletion fails, this operation returns the reason that it failed, if that information is returned by the service.
getSSHPublicKey({required EncodingType encoding, required String sSHPublicKeyId, required String userName}) Future<GetSSHPublicKeyResponse>
Retrieves the specified SSH public key, including metadata about the key.
getUser({String? userName}) Future<GetUserResponse>
Retrieves information about the specified IAM user, including the user's creation date, path, unique ID, and ARN.
getUserPolicy({required String policyName, required String userName}) Future<GetUserPolicyResponse>
Retrieves the specified inline policy document that is embedded in the specified IAM user. An IAM user can also have managed policies attached to it. To retrieve a managed policy document that is attached to a user, use GetPolicy to determine the policy's default version. Then use GetPolicyVersion to retrieve the policy document.
listAccessKeys({String? marker, int? maxItems, String? userName}) Future<ListAccessKeysResponse>
Returns information about the access key IDs associated with the specified IAM user. If there is none, the operation returns an empty list.
listAccountAliases({String? marker, int? maxItems}) Future<ListAccountAliasesResponse>
Lists the account alias associated with the AWS account (Note: you can have only one). For information about using an AWS account alias, see Using an Alias for Your AWS Account ID in the IAM User Guide.
listAttachedGroupPolicies({required String groupName, String? marker, int? maxItems, String? pathPrefix}) Future<ListAttachedGroupPoliciesResponse>
Lists all managed policies that are attached to the specified IAM group.
listAttachedRolePolicies({required String roleName, String? marker, int? maxItems, String? pathPrefix}) Future<ListAttachedRolePoliciesResponse>
Lists all managed policies that are attached to the specified IAM role.
listAttachedUserPolicies({required String userName, String? marker, int? maxItems, String? pathPrefix}) Future<ListAttachedUserPoliciesResponse>
Lists all managed policies that are attached to the specified IAM user.
listEntitiesForPolicy({required String policyArn, EntityType? entityFilter, String? marker, int? maxItems, String? pathPrefix, PolicyUsageType? policyUsageFilter}) Future<ListEntitiesForPolicyResponse>
Lists all IAM users, groups, and roles that the specified managed policy is attached to.
listGroupPolicies({required String groupName, String? marker, int? maxItems}) Future<ListGroupPoliciesResponse>
Lists the names of the inline policies that are embedded in the specified IAM group.
listGroups({String? marker, int? maxItems, String? pathPrefix}) Future<ListGroupsResponse>
Lists the IAM groups that have the specified path prefix.
listGroupsForUser({required String userName, String? marker, int? maxItems}) Future<ListGroupsForUserResponse>
Lists the IAM groups that the specified IAM user belongs to.
listInstanceProfiles({String? marker, int? maxItems, String? pathPrefix}) Future<ListInstanceProfilesResponse>
Lists the instance profiles that have the specified path prefix. If there are none, the operation returns an empty list. For more information about instance profiles, go to About Instance Profiles.
listInstanceProfilesForRole({required String roleName, String? marker, int? maxItems}) Future<ListInstanceProfilesForRoleResponse>
Lists the instance profiles that have the specified associated IAM role. If there are none, the operation returns an empty list. For more information about instance profiles, go to About Instance Profiles.
listMFADevices({String? marker, int? maxItems, String? userName}) Future<ListMFADevicesResponse>
Lists the MFA devices for an IAM user. If the request includes a IAM user name, then this operation lists all the MFA devices associated with the specified user. If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID signing the request for this API.
listOpenIDConnectProviders() Future<ListOpenIDConnectProvidersResponse>
Lists information about the IAM OpenID Connect (OIDC) provider resource objects defined in the AWS account.
listPolicies({String? marker, int? maxItems, bool? onlyAttached, String? pathPrefix, PolicyUsageType? policyUsageFilter, PolicyScopeType? scope}) Future<ListPoliciesResponse>
Lists all the managed policies that are available in your AWS account, including your own customer-defined managed policies and all AWS managed policies.
listPoliciesGrantingServiceAccess({required String arn, required List<String> serviceNamespaces, String? marker}) Future<ListPoliciesGrantingServiceAccessResponse>
Retrieves a list of policies that the IAM identity (user, group, or role) can use to access each specified service. The list of policies returned by the operation depends on the ARN of the identity that you provide.
listPolicyVersions({required String policyArn, String? marker, int? maxItems}) Future<ListPolicyVersionsResponse>
Lists information about the versions of the specified managed policy, including the version that is currently set as the policy's default version.
listRolePolicies({required String roleName, String? marker, int? maxItems}) Future<ListRolePoliciesResponse>
Lists the names of the inline policies that are embedded in the specified IAM role.
listRoles({String? marker, int? maxItems, String? pathPrefix}) Future<ListRolesResponse>
Lists the IAM roles that have the specified path prefix. If there are none, the operation returns an empty list. For more information about roles, go to Working with Roles.
listRoleTags({required String roleName, String? marker, int? maxItems}) Future<ListRoleTagsResponse>
Lists the tags that are attached to the specified role. The returned list of tags is sorted by tag key. For more information about tagging, see Tagging IAM Identities in the IAM User Guide.
listSAMLProviders() Future<ListSAMLProvidersResponse>
Lists the SAML provider resource objects defined in IAM in the account.
listServerCertificates({String? marker, int? maxItems, String? pathPrefix}) Future<ListServerCertificatesResponse>
Lists the server certificates stored in IAM that have the specified path prefix. If none exist, the operation returns an empty list.
listServiceSpecificCredentials({String? serviceName, String? userName}) Future<ListServiceSpecificCredentialsResponse>
Returns information about the service-specific credentials associated with the specified IAM user. If none exists, the operation returns an empty list. The service-specific credentials returned by this operation are used only for authenticating the IAM user to a specific service. For more information about using service-specific credentials to authenticate to an AWS service, see Set Up service-specific credentials in the AWS CodeCommit User Guide.
listSigningCertificates({String? marker, int? maxItems, String? userName}) Future<ListSigningCertificatesResponse>
Returns information about the signing certificates associated with the specified IAM user. If none exists, the operation returns an empty list.
listSSHPublicKeys({String? marker, int? maxItems, String? userName}) Future<ListSSHPublicKeysResponse>
Returns information about the SSH public keys associated with the specified IAM user. If none exists, the operation returns an empty list.
listUserPolicies({required String userName, String? marker, int? maxItems}) Future<ListUserPoliciesResponse>
Lists the names of the inline policies embedded in the specified IAM user.
listUsers({String? marker, int? maxItems, String? pathPrefix}) Future<ListUsersResponse>
Lists the IAM users that have the specified path prefix. If no path prefix is specified, the operation returns all users in the AWS account. If there are none, the operation returns an empty list.
listUserTags({required String userName, String? marker, int? maxItems}) Future<ListUserTagsResponse>
Lists the tags that are attached to the specified user. The returned list of tags is sorted by tag key. For more information about tagging, see Tagging IAM Identities in the IAM User Guide.
listVirtualMFADevices({AssignmentStatusType? assignmentStatus, String? marker, int? maxItems}) Future<ListVirtualMFADevicesResponse>
Lists the virtual MFA devices defined in the AWS account by assignment status. If you do not specify an assignment status, the operation returns a list of all virtual MFA devices. Assignment status can be Assigned, Unassigned, or Any.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
putGroupPolicy({required String groupName, required String policyDocument, required String policyName}) Future<void>
Adds or updates an inline policy document that is embedded in the specified IAM group.
putRolePermissionsBoundary({required String permissionsBoundary, required String roleName}) Future<void>
Adds or updates the policy that is specified as the IAM role's permissions boundary. You can use an AWS managed policy or a customer managed policy to set the boundary for a role. Use the boundary to control the maximum permissions that the role can have. Setting a permissions boundary is an advanced feature that can affect the permissions for the role.
putRolePolicy({required String policyDocument, required String policyName, required String roleName}) Future<void>
Adds or updates an inline policy document that is embedded in the specified IAM role.
putUserPermissionsBoundary({required String permissionsBoundary, required String userName}) Future<void>
Adds or updates the policy that is specified as the IAM user's permissions boundary. You can use an AWS managed policy or a customer managed policy to set the boundary for a user. Use the boundary to control the maximum permissions that the user can have. Setting a permissions boundary is an advanced feature that can affect the permissions for the user.
putUserPolicy({required String policyDocument, required String policyName, required String userName}) Future<void>
Adds or updates an inline policy document that is embedded in the specified IAM user.
removeClientIDFromOpenIDConnectProvider({required String clientID, required String openIDConnectProviderArn}) Future<void>
Removes the specified client ID (also known as audience) from the list of client IDs registered for the specified IAM OpenID Connect (OIDC) provider resource object.
removeRoleFromInstanceProfile({required String instanceProfileName, required String roleName}) Future<void>
Removes the specified IAM role from the specified EC2 instance profile. For more information about IAM roles, go to Working with Roles. For more information about instance profiles, go to About Instance Profiles.
removeUserFromGroup({required String groupName, required String userName}) Future<void>
Removes the specified user from the specified group.
resetServiceSpecificCredential({required String serviceSpecificCredentialId, String? userName}) Future<ResetServiceSpecificCredentialResponse>
Resets the password for a service-specific credential. The new password is AWS generated and cryptographically strong. It cannot be configured by the user. Resetting the password immediately invalidates the previous password associated with this user.
resyncMFADevice({required String authenticationCode1, required String authenticationCode2, required String serialNumber, required String userName}) Future<void>
Synchronizes the specified MFA device with its IAM resource object on the AWS servers.
setDefaultPolicyVersion({required String policyArn, required String versionId}) Future<void>
Sets the specified version of the specified policy as the policy's default (operative) version.
setSecurityTokenServicePreferences({required GlobalEndpointTokenVersion globalEndpointTokenVersion}) Future<void>
Sets the specified version of the global endpoint token as the token version used for the AWS account.
simulateCustomPolicy({required List<String> actionNames, required List<String> policyInputList, String? callerArn, List<ContextEntry>? contextEntries, String? marker, int? maxItems, List<String>? permissionsBoundaryPolicyInputList, List<String>? resourceArns, String? resourceHandlingOption, String? resourceOwner, String? resourcePolicy}) Future<SimulatePolicyResponse>
Simulate how a set of IAM policies and optionally a resource-based policy works with a list of API operations and AWS resources to determine the policies' effective permissions. The policies are provided as strings.
simulatePrincipalPolicy({required List<String> actionNames, required String policySourceArn, String? callerArn, List<ContextEntry>? contextEntries, String? marker, int? maxItems, List<String>? permissionsBoundaryPolicyInputList, List<String>? policyInputList, List<String>? resourceArns, String? resourceHandlingOption, String? resourceOwner, String? resourcePolicy}) Future<SimulatePolicyResponse>
Simulate how a set of IAM policies attached to an IAM entity works with a list of API operations and AWS resources to determine the policies' effective permissions. The entity can be an IAM user, group, or role. If you specify a user, then the simulation also includes all of the policies that are attached to groups that the user belongs to.
tagRole({required String roleName, required List<Tag> tags}) Future<void>
Adds one or more tags to an IAM role. The role can be a regular role or a service-linked role. If a tag with the same key name already exists, then that tag is overwritten with the new value.
tagUser({required List<Tag> tags, required String userName}) Future<void>
Adds one or more tags to an IAM user. If a tag with the same key name already exists, then that tag is overwritten with the new value.
toString() String
A string representation of this object.
inherited
untagRole({required String roleName, required List<String> tagKeys}) Future<void>
Removes the specified tags from the role. For more information about tagging, see Tagging IAM Identities in the IAM User Guide.
untagUser({required List<String> tagKeys, required String userName}) Future<void>
Removes the specified tags from the user. For more information about tagging, see Tagging IAM Identities in the IAM User Guide.
updateAccessKey({required String accessKeyId, required StatusType status, String? userName}) Future<void>
Changes the status of the specified access key from Active to Inactive, or vice versa. This operation can be used to disable a user's key as part of a key rotation workflow.
updateAccountPasswordPolicy({bool? allowUsersToChangePassword, bool? hardExpiry, int? maxPasswordAge, int? minimumPasswordLength, int? passwordReusePrevention, bool? requireLowercaseCharacters, bool? requireNumbers, bool? requireSymbols, bool? requireUppercaseCharacters}) Future<void>
Updates the password policy settings for the AWS account.
updateAssumeRolePolicy({required String policyDocument, required String roleName}) Future<void>
Updates the policy that grants an IAM entity permission to assume a role. This is typically referred to as the "role trust policy". For more information about roles, go to Using Roles to Delegate Permissions and Federate Identities.
updateGroup({required String groupName, String? newGroupName, String? newPath}) Future<void>
Updates the name and/or the path of the specified IAM group.
updateLoginProfile({required String userName, String? password, bool? passwordResetRequired}) Future<void>
Changes the password for the specified IAM user.
updateOpenIDConnectProviderThumbprint({required String openIDConnectProviderArn, required List<String> thumbprintList}) Future<void>
Replaces the existing list of server certificate thumbprints associated with an OpenID Connect (OIDC) provider resource object with a new list of thumbprints.
updateRole({required String roleName, String? description, int? maxSessionDuration}) Future<void>
Updates the description or maximum session duration setting of a role.
updateRoleDescription({required String description, required String roleName}) Future<UpdateRoleDescriptionResponse>
Use UpdateRole instead.
updateSAMLProvider({required String sAMLMetadataDocument, required String sAMLProviderArn}) Future<UpdateSAMLProviderResponse>
Updates the metadata document for an existing SAML provider resource object.
updateServerCertificate({required String serverCertificateName, String? newPath, String? newServerCertificateName}) Future<void>
Updates the name and/or the path of the specified server certificate stored in IAM.
updateServiceSpecificCredential({required String serviceSpecificCredentialId, required StatusType status, String? userName}) Future<void>
Sets the status of a service-specific credential to Active or Inactive. Service-specific credentials that are inactive cannot be used for authentication to the service. This operation can be used to disable a user's service-specific credential as part of a credential rotation work flow.
updateSigningCertificate({required String certificateId, required StatusType status, String? userName}) Future<void>
Changes the status of the specified user signing certificate from active to disabled, or vice versa. This operation can be used to disable an IAM user's signing certificate as part of a certificate rotation work flow.
updateSSHPublicKey({required String sSHPublicKeyId, required StatusType status, required String userName}) Future<void>
Sets the status of an IAM user's SSH public key to active or inactive. SSH public keys that are inactive cannot be used for authentication. This operation can be used to disable a user's SSH public key as part of a key rotation work flow.
updateUser({required String userName, String? newPath, String? newUserName}) Future<void>
Updates the name and/or the path of the specified IAM user.
uploadServerCertificate({required String certificateBody, required String privateKey, required String serverCertificateName, String? certificateChain, String? path}) Future<UploadServerCertificateResponse>
Uploads a server certificate entity for the AWS account. The server certificate entity includes a public key certificate, a private key, and an optional certificate chain, which should all be PEM-encoded.
uploadSigningCertificate({required String certificateBody, String? userName}) Future<UploadSigningCertificateResponse>
Uploads an X.509 signing certificate and associates it with the specified IAM user. Some AWS services use X.509 signing certificates to validate requests that are signed with a corresponding private key. When you upload the certificate, its default status is Active.
uploadSSHPublicKey({required String sSHPublicKeyBody, required String userName}) Future<UploadSSHPublicKeyResponse>
Uploads an SSH public key and associates it with the specified IAM user.

Operators

operator ==(Object other) bool
The equality operator.
inherited