Find AWS EC2 Instances Not Using IAM Instance Roles
AWS access from within AWS instances can be done by either encoding AWS keys into AWS API calls or by assigning the instance to a role which has an appropriate permissions policy for the required access.
AWS IAM roles reduce the risks associated with sharing and rotating credentials that can be used outside of AWS itself. If credentials are compromised, they can be used from outside of the AWS account.
This security check is part of the CIS Amazon Web Services Benchmarks and is rated severity medium.
This guide assumes that you have already installed and configured Resoto to collect your AWS resources.
Execute the following
searchcommand in Resoto Shell or Resoto UI:
> search is(aws_ec2_instance) and instance_iam_instance_profile=null
kind=aws_ec2_instance, ..., region=resoto-poweruser
kind=aws_ec2_instance, ..., account=poweruser-team
searchcommand into the
> search is(aws_ec2_instance) and instance_iam_instance_profile=null | dump
The command output will list the details of all non-compliant
- Create an IAM instance role and attach it to the corresponding EC2 instance.
Please refer to the AWS EC2 documentation for details.