AWS Secrets Manager आणि KMS: Keys व Secrets सुरक्षित ठेवा
Junior अजून DB password plaintext env मध्ये ठेवतात. Secrets Manager = encrypted secret; KMS = keys. Lock + key factory.
या chapter मध्ये तुम्ही काय शिकाल
- Plaintext का fail
- Secrets Manager vs SSM
- KMS CMK, policy, grants
- Rotation + RDS
- Lab, errors, FAQ, interview
1. आधी रोजचं उदाहरण
Hospital → RDS. 30 दिवसांनी rotate. Secrets Manager + Lambda rotate; app GetSecretValue. KMS CMK encrypt. Laptop चोरी → तरी IAM+KMS लागते.
2. दोन्ही services का?
हे का लागतं?
KMS = keys/crypto. Secrets Manager = rotating app secrets. SSM SecureString सुद्धा — rotation/lifecycle हवं तर Secrets Manager.
| Service | कशासाठी |
|---|---|
| KMS | CMK + data keys |
| Secrets Manager | DB/API + rotation |
| SSM | Config / simpler secrets |
3. कसं जोडायचं
कसं करायचं (step by step)
- CMK तयार (audit साठी customer CMK).
- Secret + RDS rotation.
- App role: GetSecretValue + Decrypt.
- Secret log नका.
- Unusual GetSecretValue alert.
- Break-glass doc.
{
"Effect": "Allow",
"Action": ["secretsmanager:GetSecretValue"],
"Resource": "arn:aws:secretsmanager:ap-south-1:111122223333:secret:prod/db-*"
}
4. Industries
- BFSI: rotation + CMK
- SaaS: per-tenant tokens
- Healthcare: decrypt audit
- Startups: Slack passwords थांबवा
5. Lab: dummy secret वाचा
Org block नसेल तर ap-south-1 (Mumbai). आधी budget alert.
कसं करायचं (step by step)
- CMK alias lab-secrets.
- Secret lab/demo.
- CMK encrypt.
- CloudShell get-secret-value.
- CloudTrail note.
Cleanup (billing थांबवा)
- Secret+CMK delete schedule.
- Lab IAM remove.
6. सामान्य errors आणि fixes
प्रत्येक row = खरी चूक. Panic करण्याआधी fix वाचा.
| Error / लक्षण | Fix |
|---|---|
| Plaintext env | Secrets Manager. |
| Star Resource | Pin ARN. |
| CMK disable | Monitor + staged. |
| Rotation fail | Alarm. |
| Forever cache | Short TTL. |
| Shared secret | Split. |
| AMI secret | Fetch at boot. |
| No replica | Multi-region plan. |
| All Admin | Least privilege. |
| CI log leak | Mask + OIDC. |
7. Troubleshooting checklist
- IAM + key policy.
- Pending deletion restore.
- Rotation Lambda network.
- Key policy rollback.
- Region.
- CloudTrail config.
8. FAQ
प्र. SSM vs?
Rotation/lifecycle → Secrets Manager.
प्र. Decrypt कोण?
Key policy + IAM.
प्र. Envelope?
Data keys + bulk.
प्र. Cost?
Unused delete.
प्र. S3/EBS?
होय.
9. Interview Q&A
प्र. Env vars का नको?
Visible/hard rotate/logs.
प्र. KMS?
Keys + crypto ops.
प्र. CMK vs managed?
You control policy.
प्र. Rotation?
Lambda staged versions.
प्र. Least privilege?
Exact ARN + Decrypt.
प्र. Misuse?
CloudTrail + alarms.
10. Tips — English, मराठी आणि हिंदी
Ravindra Bagale's Tip (EN)
Treat every secret like a house key: know who has a copy and change the locks on a schedule.
Ravindra Bagale's Tip (MR)
Secret = घरची चावी: copy कोणाकडे, schedule वर locks बदला.
Tip (HI)
हर secret घर की चाबी है — किसके पास copy है जानो और समय पर ताले बदलो।
घरी करून बघा
- Hardcoded passwords शोधा.
- एक ARN policy.
- 60s envelope explain.
थोडक्यात सांगायचं तर
- Secrets Manager = rotating secrets.
- KMS = keys.
- IAM + key policy.
- No plaintext anywhere.
उजळणी, मुलाखत आणि तुलना cards
हा lesson काही मिनिटांत revise करा. Cards phone वर save करा किंवा PNG download करा. प्रत्येक card वरचा QR हा lesson उघडतो.











अजून cards: Ravi Sir's Cards.
सराव Tasks
Amravati Agro Market हा अमरावती मधला शेती व्यवसाय आहे. Anjali Thakre त्यांचं IT व cloud काम पाहतात. त्यांचे पैसे INR मध्ये मोजले जातात आणि AWS resources ap-south-1 Region मध्ये चालतात. खालच्या tasks मध्ये तुम्ही या lesson मध्ये शिकलेलं वापरून त्यांची खरी कामं करता. सगळी नावं, account IDs, IP addresses व numbers सरावासाठी काल्पनिक आहेत.
0 / 16
सोपं Secrets list
का: Inventory.
काय करायचं: Secrets list.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
सोपं Secret describe
का: Value न देता meta.
काय करायचं: amravatiagro/db describe.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
सोपं KMS keys
का: CMKs.
काय करायचं: KMS keys list.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
सोपं Aliases
का: Key names.
काय करायचं: Aliases list.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
सोपं Recovery window
का: Delete schedule.
काय करायचं: Recovery window days?
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
सोपं Plaintext env
का: Plaintext नको.
काय करायचं: Plaintext env OK? नाही=0.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
मध्यम GetSecretValue
का: Runtime fetch.
काय करायचं: amravatiagro/db value.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
मध्यम Key describe
का: State/policy.
काय करायचं: alias/lab-secrets describe.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
मध्यम एक key Decrypt
का: Decrypt.
काय करायचं: key/abcd-efgh Decrypt.
- { "Version": "2012-10-17", "Statement": [ ... ] } ने सुरू करा.
- प्रत्येक statement मध्ये Effect, Action व Resource लिहा.
- Task ला लागेल तेवढंच द्या (least privilege).
- Double quotes व commas नीट वापरा. Check answer दाबा.
मध्यम Secret JSON
का: Structured.
काय करायचं: username app password changeme.
- Task मधल्या top-level keys पासून सुरू करा.
- Child keys 2 spaces ने indent करा (tabs नकोत).
- प्रत्येक property मध्ये task मधली value भरा.
- Check answer दाबा. Keys चा क्रम महत्त्वाचा नाही.
मध्यम Both gates
का: दोन gates.
काय करायचं: IAM+key policy तर 1.
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
मध्यम Cache TTL
का: Forever नको.
काय करायचं: Cache TTL minutes?
- Task मधले numbers लिहून घ्या.
- कागदावर step by step काढा.
- Box मध्ये फक्त final उत्तर लिहा.
- Check answer दाबा.
अवघड Rotate
का: Rotation.
काय करायचं: amravatiagro/db rotate.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
अवघड Secret delete
का: Lab cleanup.
काय करायचं: amravatiagro/lab delete window 7.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
अवघड Pinned GetSecretValue
का: Star नको.
काय करायचं: secret:amravatiagro/db-* GetSecretValue.
- { "Version": "2012-10-17", "Statement": [ ... ] } ने सुरू करा.
- प्रत्येक statement मध्ये Effect, Action व Resource लिहा.
- Task ला लागेल तेवढंच द्या (least privilege).
- Double quotes व commas नीट वापरा. Check answer दाबा.
अवघड Rotation days
का: Schedule.
काय करायचं: RotationDays 30.
- Task मधल्या top-level keys पासून सुरू करा.
- Child keys 2 spaces ने indent करा (tabs नकोत).
- प्रत्येक property मध्ये task मधली value भरा.
- Check answer दाबा. Keys चा क्रम महत्त्वाचा नाही.