Amazon EC2: Limits terminating EC2 instances to an IP address range - AWS Identity and Access Management

Amazon EC2: Limits terminating EC2 instances to an IP address range

This example shows how you might create an identity-based policy that limits EC2 instances by allowing the action, but explicitly denying access when the request comes from outside the specified IP range. The policy is useful when the IP addresses for your company are within the specified ranges. This policy grants the permissions necessary to complete this action programmatically from the AWS API or AWS CLI. To use this policy, replace the italicized placeholder text in the example policy with your own information. Then, follow the directions in create a policy or edit a policy.

If this policy is used in combination with other policies that allow the ec2:TerminateInstances action (such as the AmazonEC2FullAccess AWS managed policy), then access is denied. This is because an explicit deny statement takes precedence over allow statements. For more information, see Determining whether a request is allowed or denied within an account.


The aws:SourceIp condition key denies access to an AWS service, such as AWS CloudFormation, that makes calls on your behalf. For more information about using the aws:SourceIp condition key, see AWS global condition context keys.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["ec2:TerminateInstances"], "Resource": ["*"] }, { "Effect": "Deny", "Action": ["ec2:TerminateInstances"], "Condition": { "NotIpAddress": { "aws:SourceIp": [ "", "" ] } }, "Resource": ["*"] } ] }