IAM-roller og policyer
Administrer tilgangen til AWS-tjenester og -ressurser på en sikker måte ved hjelp av Identity and Access Management (IAM)-roller og finmaskede policyer.
IAM-roller og policyer er en gratis leksjon i AWS for backendutviklere (EC2, S3, RDS, Lambda) på CoddyKit. Dette er leksjon 3 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i AWS for backendutviklere (EC2, S3, RDS, Lambda), og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i AWS for backendutviklere (EC2, S3, RDS, Lambda) inneholder totalt 4 leksjoner.
Få sikker tilgang med IAM Roles
Velkommen til leksjonen om IAM Roles and Policies! I AWS er sikkerhet avgjørende. Sikker tilgangsstyring er viktig for alle backend-applikasjoner.
IAM Roles gir en effektiv måte å delegere tillatelser på uten å dele langsiktige påloggingsopplysninger. De er et grunnleggende konsept for å bygge sikre og skalerbare AWS-applikasjoner.
IAM-identiteter: Users, Groups og Roles
Før vi går i dybden, tar vi en kort oppsummering av IAM-identiteter:
- IAM Users: Representerer vanligvis en person eller tjeneste med langsiktige påloggingsopplysninger.
- IAM Groups: Samlinger av IAM-brukere som gjør det enklere å administrere tillatelser for flere brukere.
- IAM Roles: Identiteter du kan anta for å få midlertidige tillatelser. De skiller seg ut fordi de ikke har vanlige langsiktige påloggingsopplysninger knyttet til seg.
I dag fokuserer vi på disse kraftige IAM Roles.
Forstå kraften i Roles
En IAM role er en AWS-identitet med tillatelsespolicyer som bestemmer hva identiteten kan gjøre i AWS. Den er utformet slik at den kan antas av:
- En AWS-tjeneste (for eksempel en EC2-instans eller Lambda-funksjon).
- En AWS-konto (som muliggjør tilgang på tvers av kontoer).
- En ekstern identitetsleverandør (for eksempel bedriftskatalogen din).
Roles gir midlertidig og detaljert tilgang, og øker sikkerheten ved å unngå statiske påloggingsopplysninger.
Hvem kan anta en role? Trust Policies
Hver IAM role har en Trust Policy (også kalt en «assume role policy»). Denne policyen definerer hvem eller hva som har tillatelse til å anta rollen.
Hvis du for eksempel vil at en EC2-instans skal anta en role, angir trust policy-en EC2-tjenesten som den betrodde enheten. Dette er det første sikkerhetslaget for roles.
Hva kan en role gjøre? Permissions Policies
Når en role er antatt, styres handlingene dens av Permissions Policies. Disse policyene definerer hvilke handlinger rollen har tillatelse til (eller nektes å) utføre på hvilke AWS-ressurser.
Dette er identitetsbaserte policyer, skrevet i JSON-format og knyttet direkte til rollen.
Innholdet i et IAM-policy-dokument
IAM-policyer er strukturerte JSON-dokumenter. Her er en vanlig struktur:
- Version: Versjonen av policy-språket.
- Statement: En matrise med individuelle tillatelseserklæringer.
- Effect: Om erklæringen
AllowellerDenytilgang. - Action: De spesifikke AWS API-kallene som tillates eller nektes (for eksempel
s3:GetObject). - Resource: AWS-ressursene handlingen gjelder for (for eksempel
arn:aws:s3:::my-bucket/*).
{ "Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::my-bucket/*"
}
]
}Typer IAM-policyer
Permissions policies kan kategoriseres slik:
- AWS Managed Policies: Opprettes og administreres av AWS (for eksempel
AmazonS3ReadOnlyAccess). Enkle å bruke, men omfattende. - Customer Managed Policies: Opprettes og administreres av deg. Gir detaljert kontroll og kan brukes på nytt.
- Inline Policies: Bygges direkte inn i én enkelt IAM-identitet (bruker, gruppe eller role). Kan ikke brukes på nytt og slettes sammen med identiteten.
For roles foretrekkes ofte customer managed policies fordi de gir en god balanse mellom kontroll og gjenbruk.
Praktisk eksempel: EC2 får tilgang til S3
Tenk deg at du har en EC2-instans som trenger å lese filer fra en S3-bøtte.
I stedet for å lagre AWS-påloggingsopplysninger på EC2-instansen (en sikkerhetsrisiko!) oppretter du en IAM role med tillatelse til å lese fra S3. EC2-tjenesten angis i rollens trust policy.
Når EC2-instansen startes, knytter du denne rollen til den. Instansen kan deretter anta rollen og få midlertidige påloggingsopplysninger for sikker tilgang til S3.
Beste praksis for IAM Roles
Slik maksimerer du sikkerheten og effektiviteten med IAM Roles:
- Prinsippet om minste privilegium: Gi bare tillatelsene som er helt nødvendige for at en role skal utføre oppgaven sin.
- Regelmessig revisjon: Gå jevnlig gjennom rollene og de tilknyttede policyene for å sikre at de fortsatt dekker dagens behov.
- Bruk Roles i stedet for statiske påloggingsopplysninger: Foretrekk alltid roles for AWS-tjenester eller tilgang på tvers av kontoer i stedet for å bygge inn tilgangsnøkler.
- Beskrivende navn: Bruk tydelige og beskrivende navn på roles og policyer.
Rollespill: En rask sjekk
IAM roles er grunnleggende for sikre og skalerbare AWS-arkitekturer. La oss teste forståelsen din.
IAM Roles: Oppsummering av sikker tilgang
Flott jobbet! I denne leksjonen har vi utforsket IAM Roles and Policies. Du har lært:
- IAM roles muliggjør sikker, midlertidig tilgang for tjenester og kontoer.
- Trust Policies definerer hvem som kan anta en role.
- Permissions Policies definerer hvilke handlinger en antatt role kan utføre.
- Policyer er JSON-dokumenter som angir effekter, handlinger og ressurser.
- Beste praksis omfatter minste privilegium og regelmessig revisjon.
Å beherske IAM roles er et viktig steg mot å bygge robuste og sikre applikasjoner på AWS. Fortsett å øve!
Lær deg AWS for backendutviklere (EC2, S3, RDS, Lambda) med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 12
- Leksjoner
- 48
Ofte stilte spørsmål
Er leksjonen «IAM-roller og policyer» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien AWS for backendutviklere (EC2, S3, RDS, Lambda), inkludert «IAM-roller og policyer», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i AWS for backendutviklere (EC2, S3, RDS, Lambda) inneholder totalt 4 leksjoner.
Hva lærer jeg i «IAM-roller og policyer»?
Administrer tilgangen til AWS-tjenester og -ressurser på en sikker måte ved hjelp av Identity and Access Management (IAM)-roller og finmaskede policyer. Du øver på AWS for backendutviklere (EC2, S3, RDS, Lambda) med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med AWS for backendutviklere (EC2, S3, RDS, Lambda)?
Ingen tidligere erfaring er nødvendig. AWS for backendutviklere (EC2, S3, RDS, Lambda) på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 4.
Hvor lang tid tar leksjonen «IAM-roller og policyer»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne AWS for backendutviklere (EC2, S3, RDS, Lambda)-leksjonen?
Ja. Alle AWS for backendutviklere (EC2, S3, RDS, Lambda)-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- VPC-er, subnett og rutetabeller
- Sikkerhetsgrupper og NACL-er
- IAM-roller og policyer
- VPC-endepunkter og privat tilkobling