EC2 instance must have an IAM instance profile attached
High
AWS
General
aws-ec2-instance-ec2-instance-iam-instance
Applies to
AWS::EC2::Instance
What CGPulse checks
A resource passes this rule when iamInstanceProfile must be set true. Anything else is reported as a finding with the evaluated property value attached as evidence.
How to fix it
Attach an IAM instance profile to use temporary credentials instead of long-term access keys. In AWS Console: EC2 > Instance > Actions > Security > Modify IAM role. See: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html
Terraform
resource "aws_instance" "{name}" {
iam_instance_profile = aws_iam_instance_profile.{name}.name
}
Compliance frameworks
Is your environment compliant with this rule?
CGPulse checks it — and 621 others — against your Azure and AWS accounts with read-only access.
Related AWS rules
- ACM certificate must be eligible for renewal
- ACM certificate must be in issued status
- Amplify app should have basic auth disabled for production
- API Gateway REST API must have an endpoint configuration
- API Gateway V2 API must be properly configured
- App Runner service must have encryption enabled
- AppSync API must have logging configured
- AppSync API must have X-Ray tracing enabled