Adds or updates the policy that is specified as the IAM role’s permissions boundary. You can use an Amazon Web Services 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.
You cannot set the boundary for a service-linked role.
Warning
Policies used as permissions boundaries do not provide permissions. You must also attach a permissions policy to the role. To learn how the effective permissions for a role are evaluated, see IAM JSON policy evaluation logic in the IAM User Guide.
See also: AWS API Documentation
See ‘aws help’ for descriptions of global parameters.
put-role-permissions-boundary
--role-name <value>
--permissions-boundary <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
--role-name
(string)
The name (friendly name, not ARN) of the IAM role for which you want to set the permissions boundary.
--permissions-boundary
(string)
The ARN of the policy that is used to set the permissions boundary for the role.
--cli-input-json
| --cli-input-yaml
(string)
Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton
. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml
.
--generate-cli-skeleton
(string)
Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input
, prints a sample input JSON that can be used as an argument for --cli-input-json
. Similarly, if provided yaml-input
it will print a sample input YAML that can be used with --cli-input-yaml
. If provided with the value output
, it validates the command inputs and returns a sample output JSON for that command. The generated JSON skeleton is not stable between versions of the AWS CLI and there are no backwards compatibility guarantees in the JSON skeleton generated.
See ‘aws help’ for descriptions of global parameters.
Note
To use the following examples, you must have the AWS CLI installed and configured. See the Getting started guide in the AWS CLI User Guide for more information.
Unless otherwise stated, all examples have unix-like quotation rules. These examples will need to be adapted to your terminal’s quoting rules. See Using quotation marks with strings in the AWS CLI User Guide .
To apply a permissions boundary based on a custom policy to an IAM role
The following put-role-permissions-boundary
example applies the custom policy named intern-boundary
as the permissions boundary for the specified IAM role.
aws iam put-role-permissions-boundary \
--permissions-boundary arn:aws:iam::123456789012:policy/intern-boundary \
--role-name lambda-application-role
This command produces no output.
To apply a permissions boundary based on an AWS managed policy to an IAM role
The following put-role-permissions-boundary
example applies the AWS managed PowerUserAccess
policy as the permissions boundary for the specified IAM role .
aws iam put-role-permissions-boundary \
--permissions-boundary arn:aws:iam::aws:policy/PowerUserAccess \
--role-name x-account-admin
This command produces no output.
None