Route security findings to dedicated Slack channel#122
Merged
Alexanderamiri merged 1 commit intomainfrom Apr 14, 2026
Merged
Conversation
- New SSM param /javabin/slack/platform-security-alerts-webhook - Lambda routes Security Hub and GuardDuty findings to dedicated channel - Weekly summary also posts to security channel - EventBridge rule filters on Workflow.Status=NEW (suppressed findings silent) - GuardDuty root credential usage deduped per hour (one alert per session) - 50 known/accepted findings suppressed in Security Hub (80→29 active)
Terraform Plan🚧 Changes detected — Plan: 0 to add, 3 to change, 0 to destroy. Plan outputLLM ReviewRisk: 🟢 LOW Routine Lambda function updates with new environment variable and EventBridge rule refinement for security monitoring.
|
Alexanderamiri
added a commit
that referenced
this pull request
May 9, 2026
## Summary - Routes Security Hub and GuardDuty findings to new `#platform-security-alerts` Slack channel (webhook stored in SSM as SecureString) - Adds `Workflow.Status = NEW` filter to EventBridge rule so suppressed findings no longer trigger Lambda invocations on re-import - Deduplicates GuardDuty root credential usage alerts (one per hour instead of one per API call) - 50 known/accepted findings suppressed directly in Security Hub (S3 public access for website buckets, Elastic Beanstalk legacy apps, default VPC security groups, SSM public sharing) — active count reduced from 80 to 29 ## Changes - `handler.py` — read new `SECURITY_WEBHOOK_PARAM`, route security findings to it, hourly dedup for root credential GuardDuty findings - `lambdas/main.tf` — add `SECURITY_WEBHOOK_PARAM` env var to `slack-alert` and `securityhub-summary` Lambdas - `monitoring/main.tf` — add `Workflow.Status = ["NEW"]` to Security Hub EventBridge rule pattern - `CLAUDE.md` — document new SSM parameter and updated alert routing ## Test plan - [ ] Verify `terraform plan` shows only expected changes (Lambda env vars + EventBridge rule pattern) - [ ] After apply, confirm Security Hub findings post to `#platform-security-alerts` - [ ] Confirm IAM/resource/login events still post to `#javabin-infra-alerts` - [ ] Confirm suppressed findings do not trigger new alerts on next Security Hub re-evaluation cycle
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
#platform-security-alertsSlack channel (webhook stored in SSM as SecureString)Workflow.Status = NEWfilter to EventBridge rule so suppressed findings no longer trigger Lambda invocations on re-importChanges
handler.py— read newSECURITY_WEBHOOK_PARAM, route security findings to it, hourly dedup for root credential GuardDuty findingslambdas/main.tf— addSECURITY_WEBHOOK_PARAMenv var toslack-alertandsecurityhub-summaryLambdasmonitoring/main.tf— addWorkflow.Status = ["NEW"]to Security Hub EventBridge rule patternCLAUDE.md— document new SSM parameter and updated alert routingTest plan
terraform planshows only expected changes (Lambda env vars + EventBridge rule pattern)#platform-security-alerts#javabin-infra-alerts