AWS SDK Version 3 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

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.

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.


For .NET Core this operation is only available in asynchronous form. Please refer to AttachRolePolicyAsync.

Namespace: Amazon.IdentityManagement
Assembly: AWSSDK.IdentityManagement.dll
Version: 3.x.y.z


public virtual AttachRolePolicyResponse AttachRolePolicy(
         AttachRolePolicyRequest request


Type: Amazon.IdentityManagement.Model.AttachRolePolicyRequest

Container for the necessary parameters to execute the AttachRolePolicy service method.

Return Value

The response from the AttachRolePolicy service method, as returned by IdentityManagementService.


InvalidInputException The request was rejected because an invalid or out-of-range value was supplied for an input parameter.
LimitExceededException The request was rejected because it attempted to create resources beyond the current Amazon Web Services account limits. The error message describes the limit exceeded.
NoSuchEntityException The request was rejected because it referenced a resource entity that does not exist. The error message describes the resource.
PolicyNotAttachableException The request failed because Amazon Web Services service role policies can only be attached to the service-linked role for that service.
ServiceFailureException The request processing has failed because of an unknown error, exception or failure.
UnmodifiableEntityException The request was rejected because service-linked roles are protected Amazon Web Services resources. Only the service that depends on the service-linked role can modify or delete the role on your behalf. The error message includes the name of the service that depends on this service-linked role. You must request the change through that service.


The following command attaches the AWS managed policy named ReadOnlyAccess to the IAM role named ReadOnlyRole.

To attach a managed policy to an IAM role

var client = new AmazonIdentityManagementServiceClient();
var response = client.AttachRolePolicy(new AttachRolePolicyRequest 
    PolicyArn = "arn:aws:iam::aws:policy/ReadOnlyAccess",
    RoleName = "ReadOnlyRole"


Version Information

.NET Framework:
Supported in: 4.5 and newer, 3.5

See Also