Automation library · Alerts and monitoring

Automated GitHub scanner for exposed AWS IAM keys with Slack

Started by an event in a connected app, and works across Slack. 16 steps, 2 branches, 2 loops or waits: a working afternoon to understand properly.

Medium

16 stepsMedium: a working afternoon
2Branches: places the flow splits
2Loops or waits
1Service it connects to

The flow

Starts it 1Logic 10Service 5

The steps in the order they run, from what starts it.

  1. 1When clicking ‘Execute workflow’Manual triggerStarts it
  2. 2Disable Access KeysHttp RequestService
  3. 3List AWS Users1Http RequestService
  4. 4Extract AWS UsernamesCodeLogic
  5. 5Split Users for ProcessingSplit In BatchesLogic
  6. 6Get User Access KeysHttp RequestService
  7. 7Filter Active Keys OnlyIfLogic
  8. 8Prepare Github SearchCodeLogic
  9. 9Rate Limit WaitWaitLogic
  10. 10Search GitHub for Exposed KeysHttp RequestService
  11. 11Aggregate Search ResultsCodeLogic
  12. 12Check For Compromised KeysIfLogic
  13. 13Generate Security ReportCodeLogic
  14. 14Format Slack AlertCodeLogic
  15. 15SlackSlackService
  16. 16Continue ScanningNo OpLogic

How it's built

Starts on
An event in a connected app
Steps
16, with 2 branches, 2 loops or waits
Size
Medium: a working afternoon
Connects to
Slack
Model
None. This is plumbing, not judgement

Questions

What does it need to run?

An n8n account, plus your own Slack account. You connect your own accounts after importing it; none are included.

What starts it?

It starts on an event in a connected app.

Does it use AI?

No. Every step is fixed logic or a call to a service, so it does the same thing every time.

How long does it take to set up?

Plan an afternoon. 16 steps is enough that you should read each one before running it.

How do I import it?

Copy the workflow, open a new workflow in n8n and paste. The steps appear on the canvas, ready for your own accounts.

Before you run it

Nothing here has been tested by us. It is somebody's working automation, read and described from its own steps. Treat the connections it wants as a list of accounts it will touch, and read the 16 steps before you point it at anything that matters.