@@ -16,11 +16,11 @@ Secure automation of AWS tagging, cleanup, compliance, secret rotation and secur
1616 - [ 2. Tagging Automation]
1717 - [ 3. Automated Cleanup]
1818- [ Bonuses] ( #bonuses )
19- - [ 1. Security Scanning with Prowler]
20- - [ 2. Compliance Check Automation]
21- - [ 3. Slack Integration & Notification]
22- - [ 4. Secret Rotation Automation]
23- - [ 5. Automation as Code: GitHub Actions]
19+ - [ 1.1 Security Scanning with Prowler]
20+ - [ 1.2 Compliance Check Automation]
21+ - [ 1.3 Slack Integration & Notification]
22+ - [ 1.4 Secret Rotation Automation]
23+ - [ 1.5 Automation as Code: GitHub Actions]
2424- [ Screenshots] ( #screenshots )
2525- [ Lessons Learned] ( #lessons-learned )
2626- [ Notes and Limitations] ( #notes-and-limitations )
@@ -104,22 +104,22 @@ A full-stack AWS automation portfolio lab that:
104104
105105## Bonuses
106106
107- ### 1. Security Scanning with Prowler
107+ ### 1.1 Security Scanning with Prowler
108108 - Ran Prowler AWS security scan and saved results * (Screenshots: ` prowler_security_scan_running.png ` & ` prowler_security_scan_results.png ` )*
109109
110- ### 2. Compliance Check Automation
110+ ### 1.2 Compliance Check Automation
111111 - Python/boto3 script to detect unencrypted EBS volumes.
112112 - Integrates with Slack: sends alerts if non-compliance is found * (Screenshots: ` compliance-check-script.png ` , ` compliance-check-terminal-output.png ` & ` slack-alert-message-channel.png ` )*
113113
114- ### 3. Slack Integration & Notification
114+ ### 1.3 Slack Integration & Notification
115115 - Created Slack app with Incoming Webhook.
116116 - Automated notifications from scripts (test, compliance, secret rotation) * (Screenshots: ` slack-app-name-and-workspace.png ` , ` slack-enable-incoming-webhooks.png ` , ` slack-webhook-url-generated.png ` , ` slack-add-webhook-channel.png ` , ` slack-channel-message-from-script.png ` & ` slack-alert-message-channel.png ` )*
117117
118- ### 4. Secret Rotation Automation
118+ ### 1.4 Secret Rotation Automation
119119- Python script rotates IAM user access key, deletes old key and sends Slack alert.
120120- Executed via GitHub Actions for auditability * (Screenshots: ` secret-rotation-script.png ` , ` rotate-key-slack-alert.png ` & ` rotate-key-workflow-success.png ` )*
121121
122- ### 5. Automation as Code: GitHub Actions
122+ ### 1.5 Automation as Code: GitHub Actions
123123 - All automation runs as code, scheduled/triggered in ` .github/workflows/ ` .
124124 - GitHub Actions securely injects AWS/Slack secrets via encrypted secrets * (Screenshots: ` github-actions-compliance-workflow-run.png ` , ` github-actions-compliance-yaml.png ` & ` rotate-key-workflow-success.png ` )*
125125
@@ -129,30 +129,30 @@ A full-stack AWS automation portfolio lab that:
129129
130130* All screenshots are included in the ` screenshots/ ` folder.*
131131
132- | Step | Filename | Description |
133- | ------| --------------------------------------------| --------------------------------------------------|
134- | 1 | repo_folder_structure.png | Folder/project structure in VS Code |
135- | 2 | tagging_script.png | Tagging script code in editor |
136- | 2 | tagging_script_execution.png | Tagging script output (terminal) |
137- | 2/3 | ec2s_after_scripts.png | EC2s after tagging/cleanup (AWS Console) |
138- | 3 | cleanup_script.png | Cleanup script code in editor |
139- | 3 | cleanup_script_execution.png | Cleanup script output (terminal) |
140- | 4 | prowler_security_scan_running.png | Prowler running in terminal |
141- | 4 | prowler_security_scan_results.png | Security findings in Prowler HTML report |
142- | 5 | compliance-check-script.png | Compliance script code (EBS encryption) |
143- | 5 | compliance-check-terminal-output.png | Compliance check output (terminal) |
144- | 5 | slack-alert-message-channel.png | Slack channel message from compliance check |
145- | 6 | slack-app-name-and-workspace.png | Slack app/workspace selection dialog |
146- | 6 | slack-enable-incoming-webhooks.png | Slack: Incoming Webhooks enabled |
147- | 6 | slack-webhook-url-generated.png | Slack: Webhook URL generated (masked) |
148- | 6 | slack-add-webhook-channel.png | Slack: Added webhook to channel |
149- | 6 | slack-channel-message-from-script.png | Slack alert from script (test message) |
150- | 6 | slack-alert-message-channel.png | Slack compliance alert received |
151- | 7 | secret-rotation-script.png | IAM key rotation script code |
152- | 7 | rotate-key-slack-alert.png | Slack alert after key rotation |
153- | 7/8 | rotate-key-workflow-success.png | GitHub Actions workflow: key rotation success |
154- | 8 | github-actions-compliance-workflow-run.png | Compliance workflow run in Actions |
155- | 8 | github-actions-compliance-yaml.png | Compliance workflow YAML code in GitHub Actions |
132+ | Step | Filename | Description |
133+ | -------- | --------------------------------------------| --------------------------------------------------|
134+ | 1 | repo_folder_structure.png | Folder/project structure in VS Code |
135+ | 2 | tagging_script.png | Tagging script code in editor |
136+ | 2 | tagging_script_execution.png | Tagging script output (terminal) |
137+ | 2/3 | ec2s_after_scripts.png | EC2s after tagging/cleanup (AWS Console) |
138+ | 3 | cleanup_script.png | Cleanup script code in editor |
139+ | 3 | cleanup_script_execution.png | Cleanup script output (terminal) |
140+ | 1.1 | prowler_security_scan_running.png | Prowler running in terminal |
141+ | 1.1 | prowler_security_scan_results.png | Security findings in Prowler HTML report |
142+ | 1.2 | compliance-check-script.png | Compliance script code (EBS encryption) |
143+ | 1.2 | compliance-check-terminal-output.png | Compliance check output (terminal) |
144+ | 1.2 | slack-alert-message-channel.png | Slack channel message from compliance check |
145+ | 1.3 | slack-app-name-and-workspace.png | Slack app/workspace selection dialog |
146+ | 1.3 | slack-enable-incoming-webhooks.png | Slack: Incoming Webhooks enabled |
147+ | 1.3 | slack-webhook-url-generated.png | Slack: Webhook URL generated (masked) |
148+ | 1.3 | slack-add-webhook-channel.png | Slack: Added webhook to channel |
149+ | 1.3 | slack-channel-message-from-script.png | Slack alert from script (test message) |
150+ | 1.3 | slack-alert-message-channel.png | Slack compliance alert received |
151+ | 1.4 | secret-rotation-script.png | IAM key rotation script code |
152+ | 1.4 | rotate-key-slack-alert.png | Slack alert after key rotation |
153+ | 1.4/1.5 | rotate-key-workflow-success.png | GitHub Actions workflow: key rotation success |
154+ | 1.5 | github-actions-compliance-workflow-run.png | Compliance workflow run in Actions |
155+ | 1.5 | github-actions-compliance-yaml.png | Compliance workflow YAML code in GitHub Actions |
156156
157157---
158158
0 commit comments