Modifies the permissions for your VPC endpoint service . You can add or remove permissions for service consumers (IAM users, IAM roles, and Amazon Web Services accounts) to connect to your endpoint service.
If you grant permissions to all principals, the service is public. Any users who know the name of a public service can send a request to attach an endpoint. If the service does not require manual approval, attachments are automatically approved.
See also: AWS API Documentation
See ‘aws help’ for descriptions of global parameters.
modify-vpc-endpoint-service-permissions
[--dry-run | --no-dry-run]
--service-id <value>
[--add-allowed-principals <value>]
[--remove-allowed-principals <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
--dry-run
| --no-dry-run
(boolean)
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is
DryRunOperation
. Otherwise, it isUnauthorizedOperation
.
--service-id
(string)
The ID of the service.
--add-allowed-principals
(list)
The Amazon Resource Names (ARN) of one or more principals. Permissions are granted to the principals in this list. To grant permissions to all principals, specify an asterisk (*).
(string)
Syntax:
"string" "string" ...
--remove-allowed-principals
(list)
The Amazon Resource Names (ARN) of one or more principals. Permissions are revoked for principals in this list.
(string)
Syntax:
"string" "string" ...
--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.
See ‘aws help’ for descriptions of global parameters.
To modify endpoint service permissions
This example adds permission for an AWS account to connect to the specified endpoint service.
Command:
aws ec2 modify-vpc-endpoint-service-permissions --service-id vpce-svc-03d5ebb7d9579a2b3 --add-allowed-principals '["arn:aws:iam::123456789012:root"]'
Output:
{
"ReturnValue": true
}
This example adds permission for a specific IAM user (admin
) to connect to the specified endpoint service.
Command:
aws ec2 modify-vpc-endpoint-service-permissions --service-id vpce-svc-03d5ebb7d9579a2b3 --add-allowed-principals '["arn:aws:iam::123456789012:user/admin"]'
ReturnValue -> (boolean)
Returns
true
if the request succeeds; otherwise, it returns an error.