Skip to main content

AWS Identity and Access Management

AWS IAM Tutorial | Identity And Access Management (IAM) | AWS Training Videos | Edureka (Juni 2025)

AWS IAM Tutorial | Identity And Access Management (IAM) | AWS Training Videos | Edureka (Juni 2025)
Anonim

År 2011 meddelade Amazon att AWS Identity & Access Management (IAM) har tillgång till CloudFront. IAM lanserades 2010 och inkluderade S3-stöd. AWS Identity & Access Management (IAM) gör att du kan ha flera användare inom ett AWS-konto. Om du har använt Amazon Web Services (AWS), är du medveten om att det enda sättet att hantera innehåll i AWS är att ge ditt användarnamn och lösenord eller åtkomstnycklar. Detta är en verklig säkerhetshänsyn för de flesta av oss. IAM eliminerar behovet av att dela lösenord och åtkomstnycklar.

Att ständigt ändra vårt huvudsakliga AWS-lösenord eller skapa nya nycklar är bara en rörig lösning när en anställd skulle lämna vårt lag. AWS Identity & Access Management (IAM) var en bra start med individuella användarkonton med enskilda nycklar. Vi är dock en S3 / CloudFront användare så vi har tittat på CloudFront att läggas till IAM som äntligen hände.

Jag hittade dokumentationen på denna tjänst för att vara lite utspridda. Det finns några produkter från tredje part som erbjuder en rad stöd till Identity & Access Management (IAM). Men utvecklare är vanligtvis sparsamma så jag sökte en fri lösning för att hantera IAM med vår Amazon S3-tjänst.

Den här artikeln går igenom processen med att konfigurera kommandoradsgränssnittet som stöder IAM och konfigurera en grupp / användare med S3-åtkomst. Du måste ha en Amazon AWS S3-kontoinstallation innan du börjar konfigurera Identity & Access Management (IAM). Min artikel, med hjälp av Amazon Simple Storage Service (S3), går dig igenom processen att konfigurera ett AWS S3-konto.

Här är stegen involverade i att konfigurera och implementera en användare i IAM. Detta är skrivet för Windows men du kan tweak för användning i Linux, UNIX och / eller Mac OSX.

  1. Installera och konfigurera kommandoradsgränssnittet (CLI)
  2. Skapa en grupp
  3. Ge gruppåtkomst till S3 Bucket och CloudFront
  4. Skapa användare och lägg till i gruppen
  5. Skapa inloggningsprofil och skapa nycklar
  6. Teståtkomst

Installera och konfigurera kommandoradsgränssnittet (CLI)

IAM Command Line Toolkit är ett Java-program tillgängligt i Amazonas AWS Developers Tools. Med verktyget kan du utföra IAM API-kommandon från ett skalverktyg (DOS för Windows).

  • Du måste köra Java 1.6 eller högre. Du kan hämta den senaste versionen från Java.com. För att se vilken version som är installerad på ditt Windows-system, öppna kommandotolken och skriv in Java-version. Detta förutsätter att java.exe finns i din PATH.
  • Ladda ner IAM CLI-verktygslådan och plocka ut någonstans på din lokala enhet.
  • Det finns 2 filer i roten till CLI-verktyget som du behöver uppdatera.
    • AWS-credential.template: Den här filen innehåller dina AWS-uppgifter. Lägg till din AWSAccessKeyId och din AWSSecretKey, spara och stäng filen.
    • klient-config.template: Du behöver bara uppdatera den här filen om du behöver en proxyserver. Ta bort # tecknen och uppdatera ClientProxyHost, ClientProxyPort, ClientProxyUsername och ClientProxyPassword. Spara och stäng filen.
  • Nästa steg innebär att lägga till miljövariabler. Gå till Kontrollpanelen | Systemegenskaper | Avancerade systeminställningar | Miljövariabler. Lägg till följande variabler:
    • AWS_IAM_HOME: Ställ in denna variabel i katalogen där du släppte ut CLI-verktyget. Om du kör Windows och unzipped den i roten till din C-enhet, skulle variabeln vara C: IAMCli-1.2.0.
    • JAVA_HOME: Ställ in denna variabel i katalogen där Java är installerad. Det här är platsen för java.exe-filen. I en vanlig Windows 7 Java-installation skulle detta vara något som C: Program Files (x86) Java jre6.
    • AWS_CREDENTIAL_FILE: Ställ in denna variabel till sökvägen och filnamnet på den aws-credential.template som du uppdaterade ovan. Om du kör Windows och unzipped den i roten till din C-enhet, skulle variabeln vara C: IAMCli-1.2.0 aws-credential.template.
    • CLIENT_CONFIG_FILE: Du behöver bara lägga till denna miljövariabel om du behöver en proxyserver. Om du kör Windows och unzipped den i roten till din C-enhet, skulle variabeln vara C: IAMCli-1.2.0 client-config.template. Lägg inte till den här variabeln om du inte behöver den.
  • Testa installationen genom att gå till Kommandoprompt och ange iam-userlistbypath. Så länge du inte får ett fel bör du vara bra att gå.

Alla kommandona IAM kan köras från kommandotolken. Alla kommandon börjar med "iam-".

Skapa en grupp

Det finns högst 100 grupper som kan skapas för varje AWS-konto. Medan du kan ställa in behörigheter i IAM på användarnivå, är det bästa sättet att använda grupper. Här är processen för att skapa en grupp i IAM.

  • Syntaxen för att skapa en grupp är iam-groupcreate -g GROUPNAME -p PATH -v där -p och -v är alternativ. Fullständig dokumentation på kommandoradsgränssnittet finns på AWS Docs.
  • Om du vill skapa en grupp som heter "awesomeusers", skulle du ange, iam-groupcreate -g awesomeusers på Command Prompt.
  • Du kan kontrollera att gruppen skapades korrekt genom att ange iam-grouplistbypath vid kommandotolken. Om du bara hade skapat den här gruppen skulle resultatet vara något som "arn: aws: iam :: 123456789012: group / awesomeusers", där numret är ditt AWS-kontonummer.

Ge gruppåtkomst till S3 Bucket och CloudFront

Policy styr vad din grupp kan göra i S3 eller CloudFront. Som standard har din grupp inte tillgång till någonting i AWS.Jag hittade dokumentationen om politiken för att vara OK, men när jag skapade en handfull policy gjorde jag lite försök och fel för att få saker som fungerade så som jag ville att dom skulle fungera.

Du har ett par alternativ för att skapa policyer. Ett alternativ är att du kan skriva in dem direkt i kommandotolken. Eftersom du kanske skapar en policy och anpassar det, så verkade det lättare att lägga till policyen i en textfil och sedan ladda upp textfilen som en parameter med kommandot iam-groupuploadpolicy. Här är processen med hjälp av en textfil och uppladdning till IAM.

  • Använd något som anteckningsblock och ange följande text och spara filen:
    • {
    • "Påstående":{
    • "Effect": "Tillåt",
    • "Action": "S3: *"
    • "Resurs":
    • "ARN: AWS: S3 ::: BUCKETNAME"
    • "Arn: AWS: s3 ::: BUCKETNAME / *"
    • },
    • {
    • "Effect": "Tillåt",
    • "Action": "S3: ListAllMyBuckets",
    • "Resurs": "ARN: AWS: S3 ::: *"
    • },
    • {
    • "Effect": "Tillåt",
    • "Action" "Cloudfront: *"
    • "Resurs":"*"
    • }
    • }
  • Det finns 3 avsnitt i denna policy. Effekten används för att tillåta eller neka någon typ av åtkomst. Åtgärden är de specifika saker som gruppen kan göra. Resursen skulle användas för att ge tillgång till enskilda skopor.
  • Du kan begränsa åtgärden individuellt. I det här exemplet kan "Action": "s3: GetObject", "s3: ListBucket", "s3: GetObjectVersion") gruppera innehållet i en hink och hämta objekt.
  • Den första delen "Tillåt" gruppen att utföra alla S3-åtgärder för skopan "BUCKETNAME".
  • Den andra sektionen "Tillåt" gruppen att lista alla skopor i S3. Du behöver det här så att du faktiskt kan se listan med hinkar om du använder något som AWS-konsolen.
  • Den tredje sektionen ger gruppen fullständig tillgång till CloudFront.

Det finns många alternativ när det gäller IAM-policy. Amazon har ett riktigt coolt verktyg som kallas AWS Policy Generator. Det här verktyget ger en GUI där du kan skapa dina policyer och skapa den faktiska koden du behöver för att genomföra politiken. Du kan också kolla in avsnittet Access Policy Language i användarhandboken för AWS Identity and Access Management.

Skapa användare och lägg till i gruppen

Processen att skapa en ny användare och lägga till i en grupp för att ge dem tillgång innebär ett par steg.

  • Syntaxen för att skapa en användare är iam-usercreate -u USERNAME -p PATH -g GRUPPER … -k -v där -p, -g, -k och -v är alternativ. Fullständig dokumentation på kommandoradsgränssnittet finns på AWS Docs.
  • Om du vill skapa en användares "bob" skulle du ange, iam-usercreate -u bob -g awesomeusers på Command Prompt.
  • Du kan kontrollera att användaren skapades korrekt genom att ange iam-grouplistusers -g awesomeusers vid Command Prompt. Om du bara skapat den här användaren skulle resultatet vara något som "arn: aws: iam :: 123456789012: user / bob", där numret är ditt AWS-kontonummer.

Skapa loggprofil och skapa nycklar

Vid denna tidpunkt har du skapat en användare men du måste ge dem ett sätt att faktiskt lägga till och ta bort objekt från S3. Det finns 2 alternativ för att ge dina användare tillgång till S3 med hjälp av IAM. Du kan skapa en inloggningsprofil och ge dina användare ett lösenord. De kan använda sina uppgifter för att logga in på Amazon AWS Console. Det andra alternativet är att ge dina användare en åtkomstnyckel och en hemlig nyckel. De kan använda dessa nycklar i tredje parts verktyg som S3 Fox, CloudBerry S3 Explorer eller S3 Browser.

Skapa inloggningsprofil

Skapa en inloggningsprofil för dina S3-användare ger dem ett användarnamn och lösenord som de kan använda för att logga in på Amazon AWS Console.

  • Syntaxen för att skapa en inloggningsprofil är iam-useraddloginprofile -u USERNAME -p PASSWORD. Fullständig dokumentation på kommandoradsgränssnittet finns på AWS Docs.
  • Om du vill skapa en inloggningsprofil för användaren "bob" skulle du ange, iam-useraddloginprofile -u bob -p PASSWORD vid kommandotolken.
  • Du kan kontrollera att inloggningsprofilen skapades korrekt genom att ange iam-usergetloginprofile -u bob vid kommandotolken. Om du hade skapat en inloggningsprofil för Bob, skulle utmatningen vara något som "Inloggningsprofil finns för användarbob".

Skapa nycklar

Att skapa en AWS Secret Access Key och motsvarande AWS Access Key ID gör det möjligt för användarna att använda program från tredje part som de som tidigare nämnts. Tänk på att du som säkerhetsåtgärd bara kan få dessa nycklar under processen att lägga till användarprofilen. Se till att du kopierar och klistrar in utmatningen från kommandoprompt och sparar i en textfil. Du kan skicka filen till din användare.

  • Syntaxen för att lägga till nycklar för en användare är iam-useraddkey -u USERNAME. Fullständig dokumentation på kommandoradsgränssnittet finns på AWS Docs.
  • Om du vill skapa nycklar för användaren "bob" skulle du ange iam-useraddkey -u bob vid Command Prompt.
  • Kommandot kommer att mata ut nycklarna som skulle se ut så här:
    • AKIACOOB5BQVEXAMPLE
    • BvQW1IpqVzRdbwPUirD3pK6L8ngoX4PTEXAMPLE
    • Den första raden är Access Key ID och den andra raden är Secret Access Key. Du behöver både för tredje parts programvara.

Teståtkomst

Nu när du har skapat IAM-grupper / användare och givet grupperna tillgång med hjälp av policy, måste du testa åtkomsten.

Konsolåtkomst

Dina användare kan använda sitt användarnamn och lösenord för att logga in på AWS-konsolen. Det här är emellertid inte den vanliga konsolinloggningssidan som används för det huvudsakliga AWS-kontot. Det finns en särskild URL som du kan använda som bara ger ett inloggningsformulär för ditt Amazon AWS-konto. Här är URL-adressen för att logga in till S3 för dina IAM-användare.

https://AWS-ACCOUNT-NUMBER.signin.aws.amazon.com/console/s3

AWS-ACCOUNT-NUMBER är ditt vanliga AWS-kontonummer. Du kan få det genom att logga in på Amazon Web Services Inloggningsformulär. Logga in och klicka på Konto | Kontoaktivitet. Ditt kontonummer finns längst upp till höger. Se till att du tar bort bindestreckarna. URL: n skulle se ut som https://123456789012.signin.aws.amazon.com/console/s3.

Använda åtkomstnycklar

Du kan ladda ner och installera något av de tredje partens verktyg som redan nämns i den här artikeln. Ange ditt Access Key ID och den hemliga åtkomstnyckeln per 3: e parts verktygsdokumentation.

Jag rekommenderar starkt att du skapar en första användare och få den användaren att fullt ut testa att de kan göra allt de behöver göra i S3. När du har verifierat en av dina användare kan du fortsätta med att konfigurera alla dina S3-användare.