Hvordan lage IAM -roller i AWS

Hvordan lage IAM -roller i AWS
I AWS -arkitektur krever vi ofte en AWS -tjeneste for å administrere eller få tilgang til andre AWS -tjenester (for eksempel vil du at EC2 -forekomsten din skal lese data fra S3 Bucket) på dine vegne. For å gjøre det, må vi gi tillatelse til den tjenesten akkurat som om vi gir tillatelser til IAM -brukere på vår konto. Disse tillatelsene gis ved å knytte IAM -retningslinjer til IAM -roller. Da blir denne IAM -rollen tildelt AWS -tjenesten. Denne bloggen beskriver hvordan vi kan lage IAM -roller på AWS ved hjelp av AWS Management Console og AWS Command Line Interface.

Typer AWS -roller

Det er fire typer roller vi kan lage i AWS som er som følger:

AWS servicerolle

AWS -tjenesteroller er mest brukte roller når du vil at en AWS -tjeneste skal ha tillatelser for å få tilgang til en annen AWS -tjeneste på dine vegne. AWS -tjenesterollen kan festes til en EC2 -forekomst, Lambda -funksjoner eller noen annen AWS -tjeneste.

Nok en AWS -kontorolle

Dette brukes ganske enkelt for å gi tilgang fra en AWS -konto til en annen AWS -konto.

Nettidentitetsrolle

Dette er en måte å tillate brukere som ikke er på AWS -kontoen din (ikke IAM -brukere) å få tilgang til AWS -tjenester på AWS -kontoen din. Så ved å bruke nettidentitetsroller kan disse brukerne få lov til å bruke AWS -tjenester fra kontoen din.

Saml 2.0 Forbundsrolle

Denne rollen brukes til å gi tilgang til spesifikke brukere for å administrere og få tilgang til AWS -kontoen din hvis de er forbundet med SAML 2.0. Saml 2.0 er en protokoll som kan gi autentisering og autorisasjon mellom sikkerhetsdomener.

Opprette IAM -roller

I denne delen skal vi se på hvordan du kan lage IAM -roller ved hjelp av følgende metoder.

  • Bruke AWS Management Console
  • Bruke AWS Command Line Interface (CLI)

Opprette IAM -rolle ved hjelp av ledelseskonsoll

Logg på AWS -kontoen din og i den øverste søkefeltet, skriv IAM.

Velg IAM -alternativet nedover søkemenyen. Dette tar deg til IAM -dashbordet ditt. Klikk på roller i venstre sidepanel for å administrere IAM Roller i kontoen din.

Klikk på Skape rolle knapp for å opprette en ny rolle i kontoen din.

I Create Roll -delen må du først velge hvilken type rolle du vil lage. I denne artikkelen skal vi bare diskutere AWS -tjeneste roller som de er den mest ofte brukte typen rolle.

Nå må du velge AWS -tjenesten du vil opprette rollen. Det er en lang liste over tjenester tilgjengelig her, og vi kommer til å holde oss til EC2.

For å gi en rolle den ønskede tillatelsen du ønsker, må du knytte en IAM -policy til rollen akkurat som en IAM -policy er knyttet til IAM -brukere for å gi dem tillatelser. Disse retningslinjene er JSON -dokumenter med enkelt- eller flere uttalelser. Du kan enten bruke AWS -administrerte retningslinjer eller lage dine egne tilpassede retningslinjer. For denne demoen vil vi legge ved en AWS -administrert policy som bare gir tillatelse til S3.

Deretter må du legge til tagger hvis du vil, og dette er helt valgfritt trinn.

Til slutt kan du gjennomgå detaljene om rollen du oppretter, og legg til navnet for rollen din. Klikk deretter på Opprett rolleknappen nederst til høyre av konsollen.

Så du har skapt en rolle i AWS, og denne rollen kan finnes i rollenes del av IAM -konsollen.

Knytte rolle til tjenesten

Så langt har vi opprettet en IAM -rolle, nå får vi se hvordan vi kan knytte denne rollen til en AWS -tjeneste for å gi tillatelser. Som vi har skapt en EC2 -rolle slik at den bare kan festes til en EC2 -forekomst.

For å knytte en IAM -rolle til en EC2 -forekomst, oppretter du først en EC2 -forekomst på AWS -kontoen din. Etter å ha opprettet en EC2 -forekomst, gå til EC2 -konsollen.

Klikk på Handlinger Tab, velg Sikkerhet fra listen og klikk på modifiserer i IAM -rollen.

I delen Endre IAM -rollen velger du rollen fra listen du vil tilordne, og bare klikk på Lagre -knappen.

Etter dette, hvis du vil bekrefte at rollen faktisk er knyttet til forekomsten din, kan du bare se etter den i sammendragsdelen.

Opprette IAM -rolle ved hjelp av kommandolinjegrensesnitt

IAM -roller kan opprettes ved hjelp av kommandolinjegrensesnittet, og dette er den vanligste metoden fra utviklers synspunkt som foretrekker å bruke CLI fremfor administrasjonskonsoll. For AWS kan du sette opp CLI enten på Windows, Mac, Linux, eller bare du kan bruke AWS Cloudshell. Først, logg inn på AWS -brukerkonto ved å bruke legitimasjonen din og for å opprette en ny rolle, bare gå på følgende prosedyre.

Opprett en test- eller tillitsforholdspolitikkfil ved å bruke følgende kommando i terminalen.

$ vim demo_policy.JSON

I redaktøren lim inn IAM -policyen du vil knytte til IAM -rollen.

[
"Versjon": "2012-10-17",
"Uttalelse": [

"Effekt": "Tillat",
"Rektor":
"Service": "EC2.Amazonaws.com "
,
"Handling": "STS: Assumerole"

]
]

Etter å ha kopiert IAM -policyen, lagre og avslutte redaktøren. For å lese policyen fra filen, bruk katt kommando.

$ katt

Nå kan du endelig opprette din IAM -rolle ved hjelp av følgende kommando.

$ AWS IAM Create-Role--Role-Name-Assume-Role-Policy-Document File: //

Denne kommandoen vil opprette IAM -rollen og knytte IAM -policyen som er definert i JSON -dokumentet til rollen.

IAM -policyen knyttet til IAM -rollen kan endres ved å bruke følgende kommando i terminalen.

$ aws iam vedleggs-rolle-policy-rolle-navn --Policy-Arn

For å liste opp policy som er knyttet til IAM -rollen, bruk følgende kommando i terminalen.

$ aws iam liste-tilknyttede rolle-policies-rolle-navn

Knytte rolle til tjenesten

Etter å ha opprettet IAM -rollen, knytter du den nyopprettede IAM -rollen til AWS -tjenesten. Her skal vi knytte rollen til en EC2 -forekomst.

For å knytte en rolle til en EC2 -forekomst, må vi først opprette en forekomstprofil ved å bruke følgende CLI -kommando.

$ AWS IAM Create-Instance Profile-Instance-Profile-Name

Før nå rollen til forekomstprofil

$ AWS IAM ADD-ROLE-TO-STANSE-PROFIL-PROFIL-NAME> Navn<--role-name>Navn<

Til slutt, nå skal vi knytte denne forekomstprofilen til EC2 -forekomsten. For dette trenger vi følgende kommando:

$ AWS EC2 Associate-IAM-Instance-Profile-Instance-ID --iam-instans-profilert navn =

For å liste opp IAM -forekomstprofilforeninger, bruk følgende kommando i terminalen.

$ AWS EC2 beskriver-iam-instans-profil-tilknytning

Konklusjon

Administrere IAM -roller er et av de grunnleggende konseptene i AWS Cloud. IAM -roller kan brukes til å autorisere AWS -tjeneste for å få tilgang til en annen AWS -tjeneste på dine vegne. De er også viktige for å holde AWS -ressursene dine sikre ved å tildele spesifikke tillatelser til AWS -tjenester de trenger. Disse rollene kan også brukes til å la IAM -brukere fra andre AWS -kontoer bruke AWS -ressurser på AWS -kontoen din. IAM -roller bruker IAM -retningslinjer for å tildele tillatelser til AWS -tjenestene de er vedlagt med. Denne bloggen beskriver trinnvis prosedyre for å lage IAM -roller ved hjelp av AWS Management Console og AWS Command Line Interface.