Veilig releasen

AWS-beveiliging gebruiken voor developers

Rahul Singh

Technical Product Manager

Waar de checklist voor is

Twee kaarten naast elkaar boven een full-width deploybalk. De linker kaart, met label setting, bevat drie configuratiewaarden met een groen vinkje en het onderschrift one right value. De rechter kaart, met label question, bevat drie vraagtekens naast lege, gestippelde antwoordvakken en het onderschrift your answer. Pijlen lopen van beide kaarten naar de deploybalk.

  • Zes vragen, vóór je gaat deployen
  • Niet zes settings om aan te zetten
AWS-beveiliging gebruiken voor developers

Zes vragen, in volgorde van request

Vraag in deze volgorde

  1. Wie verifieert het token van de aanroeper?
  2. Welke identiteit controleert AWS?

De tenantrapportservice getekend als een verticale keten: tenantgebruiker, dan API Gateway, dan de report-functie. Genummerde markers één en twee staan bij de twee plekken waar een vraag geldt.

AWS-beveiliging gebruiken voor developers

Zes vragen, in volgorde van request

Vraag in deze volgorde

  1. Wie verifieert het token van de aanroeper?
  2. Welke identiteit controleert AWS?
  3. Wat voorkomt dat één tenant andermans rijen leest?
  4. Waar leeft het databasewachtwoord?

De tenantrapportservice als verticale keten: tenantgebruiker, API Gateway, report-functie en DynamoDB, met Secrets Manager ernaast. Genummerde markers één tot en met vier staan bij de plekken waar een vraag geldt.

AWS-beveiliging gebruiken voor developers

Zes vragen, in volgorde van request

Vraag in deze volgorde

  1. Wie verifieert het token van de aanroeper?
  2. Welke identiteit controleert AWS?
  3. Wat voorkomt dat één tenant andermans rijen leest?
  4. Waar leeft het databasewachtwoord?
  5. Wie beheert de sleutel, en wie gebruikte hem?
  6. Laat de download van morgen een spoor achter?

De tenantrapportservice als verticale keten: tenantgebruiker, API Gateway, report-functie, DynamoDB en S3-rapporten, met Secrets Manager en een KMS-sleutel ernaast. Zes genummerde markers staan bij de plekken waar een vraag geldt. Een gestippelde grens omsluit de service en wijst naar een gestippeld CloudTrail-vak eronder.

AWS-beveiliging gebruiken voor developers

Vinkje is niet hetzelfde als veilig

Drie uit deze service

  1. Role, geen key: leest elk object

Drie genummerde fragmenten van de rapportservice. In de eerste heeft de report-functie een groen vinkje en reikt een oranje, gestippelde omtrek over drie tenantprefixen in de bucket. In de tweede staat een groene tenantfilter in de functie terwijl er een lege oranje poort buiten het pad staat. In de derde heeft de bucket een groen vinkje en stopt een oranje, gestippeld pad van een auditor naar de door AWS beheerde sleutel net ervoor.

AWS-beveiliging gebruiken voor developers

Vinkje is niet hetzelfde als veilig

Drie uit deze service

  1. Role, geen key: leest elk object
  2. Tenantkolom: filter zit in je code
  3. Encryptie aan: sleutel kan niet gedeeld worden

Drie genummerde fragmenten van de rapportservice. In de eerste heeft de report-functie een groen vinkje en reikt een oranje, gestippelde omtrek over drie tenantprefixen in de bucket. In de tweede staat een groene tenantfilter in de functie terwijl er een lege oranje poort buiten het pad staat. In de derde heeft de bucket een groen vinkje en stopt een oranje, gestippeld pad van een auditor naar de door AWS beheerde sleutel net ervoor.

AWS-beveiliging gebruiken voor developers

De kloof die config niet toont

Eén buitenkader met label granted, met daarin twee niet-overlappende vakken. Een solide groen vak used bevat drie IAM-acties die de role aanriep. Een oranje, gestippeld vak never called bevat drie IAM-acties die nooit zijn aangeroepen.

  • Kloppend op de dag dat je het schreef: alle acties die de service toen aanriep
AWS-beveiliging gebruiken voor developers

De kloof die config niet toont

Eén buitenkader met label granted, met daarin twee niet-overlappende vakken. Een solide groen vak used bevat drie IAM-acties die de role aanriep. Een oranje, gestippeld vak never called bevat drie IAM-acties die nooit zijn aangeroepen.

  • Kloppend op de dag dat je het schreef: alle acties die de service toen aanriep
  • Nu te ruim: de helft die het niet meer aanroept
  • De fix: geef alleen wat negentig dagen trail in gebruik toont
AWS-beveiliging gebruiken voor developers

Noteer de reden, niet de setting

Twee helften van één keuze

  • De waarde die je code zet
  • De reden waarom

Een configuratieregel, gelabeld in de repository, staat boven een leeg, gestippeld vak met label why en het onderschrift not written down. Een pijl loopt naar een groene besliskaart met vier velden: chose, rejected, would change if en date.

AWS-beveiliging gebruiken voor developers

Noteer de reden, niet de setting

Twee helften van één keuze

  • De waarde die je code zet
  • De reden waarom

 

  • Opgeschreven en afgestemd: een beslissing
  • Niet gedocumenteerd: een verrassing

Een configuratieregel, gelabeld in de repository, staat boven een leeg, gestippeld vak met label why en het onderschrift not written down. Een pijl loopt naar een groene besliskaart met vier velden: chose, rejected, would change if en date.

AWS-beveiliging gebruiken voor developers

Dezelfde vragen, nieuwe callers

Drie rijen onder twee koppen, actor en caller, elk met een actor en de bijbehorende caller: een persoon met een browsersessie (gedimd als bekend geval), een commit met een pipeline en een request met een agent. Alle drie komen samen bij één blauwe poort, bijschrift one gate, met drie genummerde markers.

  • Workload identity: een identiteit voor een niet-menselijke caller
AWS-beveiliging gebruiken voor developers

Dezelfde vragen, nieuwe callers

Drie rijen onder twee koppen, actor en caller, elk met een actor en de bijbehorende caller: een persoon met een browsersessie (gedimd als bekend geval), een commit met een pipeline en een request met een agent. Alle drie komen samen bij één blauwe poort, bijschrift one gate, met drie genummerde markers.

  • Workload identity: een identiteit voor een niet-menselijke caller
  • Dezelfde drie vragen: een identiteit die AWS kan checken, een scope niet breder dan de taak, een log van wat het deed
  • Wat veranderde: de caller
AWS-beveiliging gebruiken voor developers

Waar dit hierna naartoe gaat

Twee gestapelde banden. De bovenste, the account, bevat vier gelijke vakken: GuardDuty, Security Hub, AWS Config en Organizations. Onder een gestippelde scheiding staat de onderste band, your service, met dezelfde zes genummerde markers als eerder.

  • Je service: de zes vragen
  • De account erboven: GuardDuty, Security Hub, AWS Config, Organizations
AWS-beveiliging gebruiken voor developers

Laten we oefenen!

AWS-beveiliging gebruiken voor developers

Preparing Video For Download...