Skip to content

IAM  >  Operations  >  attach_role_policy

attach_role_policy

Operation

attach_role_policy async

attach_role_policy(input: AttachRolePolicyInput, plugins: list[Plugin] | None = None) -> AttachRolePolicyOutput

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.

Note

You cannot use a managed policy as the role's trust policy. The role's trust policy is created at the same time as the role, using CreateRole . You can update a role's trust policy using UpdateAssumerolePolicy .

Use this operation 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.

As a best practice, you can validate your IAM policies. To learn more, see Validating IAM policies in the IAM User Guide.

Parameters:

Name Type Description Default
input AttachRolePolicyInput

An instance of AttachRolePolicyInput.

required
plugins list[Plugin] | None

A list of callables that modify the configuration dynamically. Changes made by these plugins only apply for the duration of the operation execution and will not affect any other operation invocations.

None

Returns:

Type Description
AttachRolePolicyOutput

An instance of AttachRolePolicyOutput.

Input

AttachRolePolicyInput dataclass

Bases: _SerdeShape

Dataclass for AttachRolePolicyInput structure.

Attributes

policy_arn class-attribute instance-attribute
policy_arn: str | None = ...

The Amazon Resource Name (ARN) of the IAM policy you want to attach.

For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

role_name class-attribute instance-attribute
role_name: str | None = ...

The name (friendly name, not ARN) of the role to attach the policy to.

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-

Output

AttachRolePolicyOutput dataclass

Bases: _SerdeShape

Dataclass for AttachRolePolicyOutput structure.

Attributes

response_metadata class-attribute instance-attribute
response_metadata: ResponseMetadata = ...

Metadata about the response that produced this output. Use this to recover the request identifiers a service's support team needs in order to investigate a call. Members of the metadata are individually optional.