IAM / Client / attach_role_policy
attach_role_policy#
- IAM.Client.attach_role_policy(**kwargs)#
- 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. - See also: AWS API Documentation - Request Syntax- response = client.attach_role_policy( RoleName='string', PolicyArn='string' ) - Parameters:
- RoleName (string) – - [REQUIRED] - 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: _+=,.@- 
- PolicyArn (string) – - [REQUIRED] - 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. 
 
- Returns:
- None 
 - Exceptions- IAM.Client.exceptions.NoSuchEntityException
- IAM.Client.exceptions.LimitExceededException
- IAM.Client.exceptions.InvalidInputException
- IAM.Client.exceptions.UnmodifiableEntityException
- IAM.Client.exceptions.PolicyNotAttachableException
- IAM.Client.exceptions.ServiceFailureException
 - Examples- The following command attaches the AWS managed policy named ReadOnlyAccess to the IAM role named ReadOnlyRole. - response = client.attach_role_policy( PolicyArn='arn:aws:iam::aws:policy/ReadOnlyAccess', RoleName='ReadOnlyRole', ) print(response) - Expected Output: - { 'ResponseMetadata': { '...': '...', }, }