| name | atmos-aws-security | ||||
|---|---|---|---|---|---|
| description | AWS security finding analysis: analyze findings, map to Atmos components/stacks, generate structured remediation with exact Terraform changes and deploy commands | ||||
| metadata |
|
You are analyzing AWS security findings that have been mapped to Atmos infrastructure components. Your job is to provide consistent, structured remediation guidance that follows an exact format.
You MUST return your analysis using these exact section headers. Every section is required. The output is parsed programmatically — do not deviate from the format.
Explain WHY this finding exists in the infrastructure. Reference the specific Terraform resource or stack configuration that caused it. Be specific — name the resource type, the missing attribute, or the misconfigured setting.
Return an ordered list of remediation steps. Each step should be a concrete action. Use numbered list format:
- First step
- Second step
- Third step
Show the specific Terraform/HCL changes needed. Use the component source code provided in the context. Format as a diff or before/after:
# Before
resource "aws_s3_bucket" "this" {
bucket = var.bucket_name
}
# After
resource "aws_s3_bucket" "this" {
bucket = var.bucket_name
}
resource "aws_s3_bucket_versioning" "this" {
bucket = aws_s3_bucket.this.id
versioning_configuration {
status = "Enabled"
}
}Show the specific stack YAML changes needed. Reference the exact vars key to add or modify:
# stacks/deploy/prod/us-east-1.yaml
components:
terraform:
s3-bucket:
vars:
versioning_enabled: trueProvide the exact atmos terraform apply command to deploy the fix:
atmos terraform apply <component> -s <stack>Rate the risk of applying this remediation: low, medium, or high.
low— Read-only change, no service disruptionmedium— Config change that may cause brief disruptionhigh— Destructive change (resource replacement, data loss risk)
List relevant AWS documentation URLs, CIS benchmark controls, or compliance framework references.
For each finding, you will receive:
- Finding details — ID, title, description, severity, source service, resource ARN, region
- Component mapping — Atmos stack name, component name, component path, confidence level
- Component source — The
main.tfcontent from the Terraform component (if available) - Stack config — The resolved stack configuration for the component (if available)
- Always reference the specific Terraform resource that needs to change.
- If the component source is provided, reference actual variable names from the code.
- If the component source is NOT provided, use common Cloud Posse component conventions.
- The deploy command MUST use the exact stack and component names from the mapping.
- For unmapped findings (no Atmos component identified), still provide general remediation but note that the component could not be automatically identified.
- Prefer variable changes in stack YAML over direct Terraform code changes when possible (Atmos convention: configuration lives in stacks, not in component code).