$ shellfirm
Protection Coverage

AWS

Protection patterns for AWS CLI operations including EC2, S3, RDS, IAM, and CloudFormation

The aws check group covers destructive AWS CLI operations that can terminate instances, delete data, and remove cloud infrastructure.

AWS checks

S3 remove bucket

IDaws:s3_remove_bucket
SeverityHigh
Alternativeaws s3 ls s3://<bucket> -- list bucket contents first to verify what would be deleted
# Triggers
aws s3 rb s3://my-bucket
aws s3 rb s3://my-bucket --force

S3 recursive delete

IDaws:s3_recursive_delete
SeverityHigh
FilterNotContains --dryrun
# Triggers
aws s3 rm s3://my-bucket/data/ --recursive

# Does NOT trigger
aws s3 rm s3://my-bucket/data/ --recursive --dryrun

EC2 terminate instances

IDaws:ec2_terminate
SeverityHigh
Alternativeaws ec2 stop-instances -- stop instead of terminate to preserve the instance for later restart
# Triggers
aws ec2 terminate-instances --instance-ids i-1234567890abcdef0

RDS delete instance

IDaws:rds_delete
SeverityHigh
Alternativeaws rds delete-db-instance --skip-final-snapshot=false --final-db-snapshot-identifier <name> -- create a final snapshot before deletion
# Triggers
aws rds delete-db-instance --db-instance-identifier my-database

IAM delete

IDaws:iam_delete
SeverityHigh

Covers deletion of IAM users, roles, policies, and groups.

# Triggers
aws iam delete-user --user-name admin
aws iam delete-role --role-name my-role
aws iam delete-policy --policy-arn arn:aws:iam::123456789:policy/my-policy
aws iam delete-group --group-name developers

CloudFormation delete stack

IDaws:cfn_delete_stack
SeverityHigh
# Triggers
aws cloudformation delete-stack --stack-name my-infrastructure

Route53 delete hosted zone

IDaws:route53_delete_zone
SeverityHigh
# Triggers
aws route53 delete-hosted-zone --id Z1234567890

EKS delete cluster

IDaws:eks_delete_cluster
SeverityHigh
# Triggers
aws eks delete-cluster --name my-cluster

Lambda delete function

IDaws:lambda_delete
SeverityHigh
# Triggers
aws lambda delete-function --function-name my-function

Summary table

IDCommandSeverityFilterAlternative
aws:s3_remove_bucketaws s3 rbHigh--aws s3 ls
aws:s3_recursive_deleteaws s3 rm --recursiveHighNotContains --dryrun--
aws:ec2_terminateaws ec2 terminate-instancesHigh--aws ec2 stop-instances
aws:rds_deleteaws rds delete-db-instanceHigh--Final snapshot variant
aws:iam_deleteaws iam delete-(user|role|policy|group)High----
aws:cfn_delete_stackaws cloudformation delete-stackHigh----
aws:route53_delete_zoneaws route53 delete-hosted-zoneHigh----
aws:eks_delete_clusteraws eks delete-clusterHigh----
aws:lambda_deleteaws lambda delete-functionHigh----