Kā uzņemties IAM lomu, izmantojot AWS CLI?

Ka Uznemties Iam Lomu Izmantojot Aws Cli



Tā kā AWS sniedz vairākus pakalpojumus un milzīgas priekšrocības, ir tikai dabiski, ka IT eksperti izvirzīja bažas par drošību. Lai novērstu šīs drošības problēmas, AWS ieviesa IAM pakalpojumu. AWS IAM ir viens no galvenajiem tīmekļa pakalpojumiem, kas lietotājiem ļauj nodrošināt AWS resursus. IAM nodrošina AWS pakalpojumu centrālās piekļuves pārvaldības funkcionalitāti, definējot atļaujas dažādiem lietotājiem.

Ātrā kontūra

Šajā rakstā jūs uzzināsit par:







Kāda ir AWS IAM loma?
Kāda ir Uzņemšanās loma AWS?
Kā uzņemties IAM lomu, izmantojot AWS CLI?



Pēdējās domas



Izmantojot IAM lomas un atļaujas, mēs varam noteikt autentificēto un autorizēto piekļuvi AWS pakalpojumiem. Šīs lomas un atļaujas var piešķirt tikai AWS konta saknes lietotājs (īpašnieks).





Kāda ir AWS IAM loma?

IAM loma ir identitāte, ko AWS kontā izveidojis saknes lietotājs. Šai identitātei ir piešķirtas īpašas atļaujas, kas nosaka IAM lomas piekļuves apjomu AWS resursiem. Šīs atļaujas var pārvaldīt vai nu AWS, vai arī tās var būt pielāgotas saknes lietotājs.

IAM loma ir ļoti līdzīga IAM lietotājam, izņemot to, ka IAM loma ir identitāte ar noteiktām atļaujām, kamēr lietotājs var uzņemties šīs lomas, lai veiktu noteiktas funkcijas. Lomai piešķirtās atļaujas nosaka, kādas darbības var veikt ar šo identitāti (IAM loma).



Kāda ir Uzņemšanās loma AWS?

Pieņemsim, ka loma ir viena no AWS IAM pakalpojuma funkcijām, kas ļauj lietotājam darboties ar AWS pakalpojumiem, lai gan lietotājam nav piešķirtas atļaujas piekļūt resursam vai manipulēt ar to pakalpojumā. Šīs atļaujas tiek netieši piešķirtas lietotājam, kad tiek uzņemta loma. Lai piekļūtu AWS resursiem, tiek izmantota pagaidu akreditācijas datu kopa, kā arī uz sesiju balstīta pieteikšanās.

Šie pagaidu akreditācijas dati ietver slepeno piekļuves atslēgu, piekļuves atslēgas ID un drošības pilnvaru. IAM lomas, ko izveidojis AWS saknes lietotājs, var uzņemties citi lietotāji AWS kontā vai tie lietotāji, kuru ARN ir minēts lomas politikā. Politika, kas satur lietotāju vai resursu ARN, ir zināma kā Uzticības politika .

Kāda ir atšķirība starp atļauju politiku un uzticamības politiku?

Pirms lomas uzņemšanās funkcionalitātes ieviešanas, izmantojot dažādas metodes, lietotājam ir jāsaprot divi pamatjēdzieni. IAM pakalpojumā ir divu veidu politikas:

    • Uzticības politika: Uzticības politika nosaka, kurš var uzņemties noteiktu IAM lomu. Lai lomu uzņemtos lietotājs, lietotāja ARN ir minēts IAM lomas uzticamības politikā. Šī uzticamības politika nosaka, vai lietotājs vai resursi ir uzticama entītija, lai uzņemtos šo lomu.
    • Atļauju politika: Šī politika nosaka, ko lietotājs var darīt vai kādas darbības var veikt ar lomu.

Kā uzņemties IAM lomu, izmantojot AWS CLI?

Uzņemties lomu ir līdzīgi kā maskēties par citu lietotāju, kurš ir autentificēts un pilnvarots veikt noteiktas darbības. Pieņemot identitāti, AWS ir nodrošinājis, ka drošība paliek neskarta.

Izpratīsim funkcionalitātes Pieņemsim lomu darbību, apsverot tālāk sniegto piemēru.

Piemēram, AWS kontā pastāv lietotājs, kuram nav piešķirtas nekādas atļaujas S3 segmentam. The “Tikai lasīšanas piekļuve” tiek saukta par atļauju politiku, kas ir pievienota IAM lomai. Lai lietotājs varētu uzņemties šo lomu, lietotāja ARN ir minēts IAM lomas politikā. Šo politiku tagad sauc par 'uzticības politika' un tas atšķiras no atļauju politikas. Uzticamības politika ir ļoti svarīga, jo tā palīdz AWS noteikt, vai lietotājs ir autorizēta vienība.

Ņemiet vērā, ka ARN ir minēts uzticības politikā, nevis IAM lomas atļauju politikā. Uzņemoties lomu, lietotājs var veikt dažas administratīvās darbības, kas noteiktas lomas atļauju politikā. Šīs darbības ietver resursa pievienošanu, dzēšanu, modificēšanu vai atjaunošanu utt.

Tālāk ir norādītas trīs metodes, kā uzņemties lomu ar AWS CLI.

1. metode: STS (drošības marķiera pakalpojuma) izmantošana

Lietotāji var uzņemties lomu, izpildot komandas sadaļā STS (Secure Token Service), kas atgriež pagaidu akreditācijas datu kopu. Pagaidu akreditācijas dati tiek izmantoti, lai izveidotu uz sesiju balstītu pieteikšanos, lai veiktu API izsaukumus resursiem. Tomēr ir divi izņēmumi izmantojot STS, t.i., GetFederationToken un GetSessionToken.

Lietotājam ir ierobežota piekļuve šiem marķieriem, lai nodrošinātu sesijas un federācijas marķieru konfidenciālo informāciju. Lai nekādā gadījumā netiktu apdraudēta drošība. Uzņemoties lomu, lietotājs var paaugstināt viņam piešķirtās privilēģijas.

Šajā raksta sadaļā mēs pieprasīsim pagaidu akreditācijas datu kopu, izmantojot STS komandas. Tālāk ir norādītas darbības.

1. darbība. Izveidojiet lietotāju un lietotāja politiku

Pirmkārt, mēs to darīsim izveidot IAM lietotāju bez atļaujām. Šim nolūkam atveriet CMD no Windows izvēlnes Sākt:


Tikai root lietotājs var izveidot an IAM lietotājs AWS kontā. Tāpēc pierakstieties AWS saknes kontā, izmantojot šo komandu:

aws konfigurēšana


Akreditācijas dati jau ir konfigurēti šīs demonstrācijas CLI, kā parādīts komandas izvadē:


Uzzināt vairāk:

Uz izveidot IAM lietotāju , norādiet šādu komandu CLI:

aws iam izveidot-lietotājs --lietotājvārds demonstrācijas lietotājs


Nomainiet demonstrācijas lietotājs ar tavu IAM lietotājvārds.

Saglabājiet 'Arns' dots komandas izvadā, kā tas būs nepieciešams kad veidojot uz Uzticības politika :


Lasīt vairāk:

Nākamais solis ir atļauju lietotājs (demonstrācijas lietotājs ) uz uzņemties lomu . Šim nolūkam izveidojiet a JSON fails izmantojot jebkuru teksta redaktors tu dod priekšroku. Šai demonstrācijai mēs izmantojām Notepad kā norādīts tālāk minētajā komandā:

Operētājsistēmai Windows

notepad user-policy.json


Nomainiet lietotāja politika ar jūsu IAM politikas nosaukumu.

Operētājsistēmai Linux

jo user-policy.json


Pašlaik šai demonstrācijai mēs izmantojam Windows operētājsistēmu:


Tas atvērs piezīmju grāmatiņu. Ielīmējiet šo politiku piezīmju grāmatiņā un nospiediet “CTRL+S” no tastatūras, lai saglabātu izmaiņas:

{
'Versija' : '2012-10-17' ,
'Paziņojums, apgalvojums' : [
{
'Efekts' : 'Atļaut' ,
'Darbība' : [
'ec2:Aprakstiet*' ,
'iam:ListRoles' ,
'sts:AssumeRole'
] ,
'Resurss' : '*'
}
]
}


Tālāk ir sniegts īss norādītās politikas apraksts:

    • ec2:Aprakstiet: Šī atļauja norāda, ka lietotājs var skatīt vai uzskaitīt visus AMI, momentuzņēmumus vai EC2 gadījumus.
    • iam:ListRoles: Šī atļauja norāda, ka lietotājs var uzskaitīt visas lomas IAM pakalpojumā.
    • sts:AssumeRole: Šī atļauja norāda, ka lietotājs var uzņemties lomu, kas noteikta IAM pakalpojumā.

Šeit politika ir rediģēta piezīmju blokā un tiek saglabāta:


Katrs AWS resurss ir piešķirts an Piekļuves resursa nosaukums (ARN) kuras unikāli identificē resurss. Lai noteiktu politikas ARN, izmantojiet tālāk minēto komandu.

aws iam izveides politika --politikas nosaukums lietotāja politika --politikas dokuments fails: // user-policy.json


Iepriekš minētajā komandā:

    • – politikas nosaukums: Nomainiet vērtību “lietotāja politika” ar jebkuru politikas nosaukumu pēc jūsu izvēles.
    • – politikas dokuments: Šajā laukā aizstājiet ' user-policy.json” ar json faila nosaukumu, kas satur lietotāja politiku.

Iepriekš minētās komandas izvade ir šāda. Saglabājiet 'Arns' minēts politikas izvadē, jo tas būs nepieciešams, pievienojot šo politiku lietotājam:

2. darbība. Pievienojiet politiku ar lietotāju

Šī politika ļaus lietotājam uzskaitīt EC2 gadījumi , Draugi uc Kad lietotājs uzņemas lomu ar citu atļauju, lietotājs varēs veikt tikai konkrēto darbību, kā to atļauj atļauju politika.

Lai pievienotu politiku ar lietotāju, kas tika izveidots iepriekš šajā sadaļā, izmantojiet šo komandu:

aws iam pievienot lietotāja politiku --lietotājvārds demonstrācijas lietotājs --politika-arn 'arn:aws:iam::123456789:policy/user-policy'


Iepriekš minētajā komandā:

    • -lietotājvārds: Nomainiet “demonstrācijas lietotājs” iekš – lietotājvārds laukā ar savu IAM lietotājvārdu.
    • –politika-arn: Līdzīgi, sadaļā -politika-arn, norādiet 'Arns' no iepriekšējās komandas izvades, t.i., –create-policy.

Izpildot komandu pēc nepieciešamo izmaiņu veikšanas, politika ir veiksmīgi pievienota lietotājam:


Lai pārbaudītu, vai politika ir pievienota lietotājam, sniedziet šādu komandu CLI:

aws iam list-attached-user-policies --lietotājvārds demonstrācijas lietotājs


Nomainiet demonstrācijas lietotājs ar savu IAM lietotājvārds norādīts, veidojot lietotāju.

Šīs komandas izvade pārbauda, ​​vai politika ir veiksmīgi pievienota lietotājam:

3. darbība. Izveidojiet uzticības politiku un IAM lomu

Uzticamības attiecības tiek izveidotas, kad politikā ir norādīts resurss vai lietotāja ARN. Pēc tam šī funkcionalitāte ļauj lietotājiem vai entītijai veikt noteiktas darbības, kas tiek uzskatītas par uzticamām saskaņā ar politiku.

Šajā darbībā mēs izveidosim politiku, kas nosaka uzticības attiecības starp IAM lomu un lietotāju. Šī uzticības politika tiks pievienota IAM lomai. Pēc tam IAM lomu uzņemsies lietotājs, kas netieši ļaus lietotājam veikt politikā norādītās darbības.

Lai izveidotu uzticamības politiku, tiek dotas šādas komandas:

Operētājsistēmai Windows

notepad trust-role-policy.json


Nomainiet trust-role-policy.json ar polises preferences nosaukumu.

Operētājsistēmai Linux

jo trust-role-policy.json


Nomainiet trust-role-policy.json ar polises preferences nosaukumu.

Uzticības politika tiek ievērota JSON formātā kā norādīts .json paplašinājumu šādā komandā:


Tas atvērs piezīmju grāmatiņu. Ielīmēt sekojošais politiku piezīmju grāmatiņā un nospiediet “CTRL+S” pogu no tastatūras, lai saglabātu izmaiņas. Lietotāja ARN var arī nokopēt no IAM konsoles lietotāja informācijas paneļa. Šim nolūkam apmeklējiet IAM informācijas paneli un noklikšķiniet uz lietotāja vārda. No parādītās konfigurācijas kopējiet tā lietotāja ARN, kas tiek parādīts sadaļā Kopsavilkums.

{
'Versija' : '2012-10-17' ,
'Paziņojums, apgalvojums' : {
'Efekts' : 'Atļaut' ,
'Vairākums' : {
'AWS' : 'arn:aws:iam::123456789012:user/example-user'
} ,
'Darbība' : 'sts:AssumeRole'
}
}


Iepriekš minētajā politikā:

    • AWS: Nomainiet AWS lauka vērtība “arn:aws:iam::123456789012:user/example-user ”ar Lietotāja ARN kas tika parādīts komandas –create-user izvadē.

Lietotājs var ierobežot citus lietotājus uzņemties IAM lomu, norādot lietotāja ARN “AWS” lauks:


Lasīt vairāk:

Tagad izveidojiet IAM lomu un pievienojiet tai uzticības politiku. Lai izveidotu IAM lomu, izmantojiet tālāk minēto komandu:

aws iam izveidot lomu -- lomas nosaukums lietotāja loma --sume-role-policy-document fails: // trust-role-policy.json


Tālāk ir sniegts iepriekš minēto lauku apraksts:

    • - lomas nosaukums: Šis lauks tiek izmantots, lai ievadītu nosaukumu, kas tiks piešķirts šai IAM lomai. Aizstājiet “user-role” vērtību ar IAM lomas nosaukumu pēc savas izvēles.
    • –uzņemties-lomas-politikas-dokuments: Šajā laukā norādiet ceļu, kā norādīts komandā. Aizstājiet failu trust-role-policy.json ar politikas nosaukumu, kā norādījāt iepriekšējā sadaļā.

Izpildot šo komandu, tā izvadā atgriezīs vairākas informācijas daļas, piemēram, ARN, ceļš, ID utt.:


Lasīt vairāk:

Uzņemoties šo lomu, lietotājs varēs veikt “Tikai lasīšanas piekļuve” darbība ar S3 kausu. Komanda tiek dota šādi:

aws iam pievienot lomas politiku -- lomas nosaukums lietotāja loma --politika-arn 'arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess'


Iepriekš minētajā komandā:

    • - lomas nosaukums: Aizvietot ' lietotāja loma” laukā –role-name ar IAM lomas nosaukums ko norādījāt iepriekš šajā apmācībā.
    • –politika-arn: Arn, kas norādīts –policy-arn, attiecas uz ReadOnlyAccess atļauju S3 segmentam.

Šajā attēlā lomai ir piešķirta S3 segmenta ReadOnlyAccess atļauja:


Lai pārbaudītu, vai lomai ir piešķirta atļauja, izmantojiet šo komandu:

aws iam list-attached-role-policies -- lomas nosaukums lietotāja loma


Nomainiet “lietotāja loma” ar savu IAM lomas nosaukumu.

The “AmazonS3ReadOnlyAccess” IAM lomai ir pievienota atļauja. Komandas izvade tiek dota šādi:

4. darbība. Izveidojiet piekļuves atslēgas

Šajā sadaļā mēs izveidosim lietotāja piekļuves atslēgas. Piekļuves atslēgas tiks izmantotas, lai pieteiktos AWS kontā:

aws iam Create-access-key --lietotājvārds demonstrācijas lietotājs


Nomainiet demonstrācijas lietotājs ar jūsu IAM lietotājvārdu, kas norādīts lietotāja izveides laikā.

Šeit komanda ir atgriezusi piekļuves atslēgu pāru kopu (AccessKeyId un Secret Access Key) ar papildu informāciju, piemēram, izveidošanas datumu, statusu utt. Saglabāt AccessKeyId un SecretAccessKey, jo tie ir nepieciešami vēlāk apmācībā:


Lasīt vairāk:

5. darbība: konfigurējiet piekļuves atslēgu un pārbaudiet IAM lietotāju

Lai konfigurētu piekļuves atslēgu, norādiet šādu komandu CMD un pēc tam ievadiet piekļuves atslēgas ID un slepeno piekļuves atslēgu:

aws konfigurēšana


Norādiet piekļuves atslēgas ID un slepeno piekļuves atslēgu CLI, kas tika izveidotas šīs sadaļas 4. darbībā. Šim reģionam esam saglabājuši noklusējuma iestatījumus. Lietotāji var konfigurēt jebkuru izvades formātu noklusējuma izvades formātam. Šai demonstrācijai mēs esam norādījuši JSON formāts:


Lai pārbaudītu, vai IAM lietotājs ir konfigurēts, norādiet šādu komandu CLI:

aws sts iegūt zvanītāja identitāti


Komandas izvade norāda, ka “demonstrācijas lietotājs” ir veiksmīgi konfigurēts un pašlaik ir pieteicies AWS kontā:


Lai noteiktu, vai IAM lietotājs var uzskaitīt EC2 gadījumus un viņam pašlaik nav piekļuves S3 segmentam, izmantojiet šo komandu:

aws ec2 apraksta gadījumus -- vaicājums 'Reservations[*].Instances[*].[VpcId, InstanceId, ImageId, InstanceType]'


Komandas izvade tiek dota šādi:


Tagad sniedziet šādu komandu, lai pārbaudītu, vai lietotājs var piekļūt S3 spainim:

aws s3 ls


Tas parādīs 'Pieeja noliegta' kļūda, kas norāda, ka lietotājam nav atļauts piekļūt S3 spainim:

6. darbība. Uzņemieties IAM lomu

Lietotājam ir atļauja uzskaitīt IAM lomas AWS kontā. Tāpēc, lai uzņemtos lomu, mēs vispirms iegūsim nepieciešamo informāciju, piemēram, ARN, izpildot šādu komandu:

aws iam list-lomas -- vaicājums 'Lomas[?RoleName == 'lietotāja loma'].[RoleName, Arn]'


Laukā “RoleName” aizstājiet “user-role” ar IAM lomas nosaukumu.

ARN ir norādīts iepriekš minētās komandas izvadā:


Tagad, kad mums ir IAM lomas ARN, mēs varam uzņemties lomu, izmantojot šādu komandu:

aws sts uzņemties lomu -- loma-arn 'arn:aws:iam::123456789012:role/example-role' -- lomas sesijas nosaukums AWSCLI sesija


Iepriekš minētajā komandā:

    • -loma-arn: Aizstājiet minēto lomu –role-arn ar IAM lomas ARN.
    • -lomas-sesijas-nosaukums: Lietotājs šim laukam var norādīt jebkuru preferences nosaukumu.

Izpildot iepriekš minēto komandu, ir atgriezta pagaidu akreditācijas datu kopa. Šie pagaidu akreditācijas dati tiks izmantoti, lai uzņemtos IAM lomu ar vajadzīgo atļauju, t.i., ReadOnlyAccess. AccessKeyId un SecretAccessKey tiks izmantoti, konfigurējot šos pagaidu akreditācijas datus:


Šeit ir īss komandas izvades apraksts:

    • SessionToken: Sesijas marķieris tiek izmantots, lai izveidotu uz sesiju balstītu pieteikšanos. Saglabājiet šī lauka vērtību, jo tā būs nepieciešama, konfigurējot akreditācijas datus.
    • Derīguma termiņš: Sesijas pilnvarai ir derīguma termiņš un laiks. Pēc norādītā laika marķieris vairs nebūs izmantojams, un lietotājs nevarēs uzņemties lomu.

7. darbība: konfigurējiet vides mainīgo

Lai konfigurētu pagaidu akreditācijas datus, mēs izmantosim komandu “set” operētājsistēmai Windows un pēc tam norādīsim piekļuves atslēgas ID, slepenās piekļuves atslēgas, sesijas pilnvaras utt. vērtību:

Operētājsistēmai Windows

komplekts AWS_ACCESS_KEY_ID =RoleAccessKeyID


Aizstājiet RoleAccessKeyID ar piekļuves atslēgas ID, kas tika atgriezta ar komandu 6. darbībā.

Operētājsistēmai Linux

eksportēt AWS_ACCESS_KEY_ID =RoleAccessKeyID


Aizstājiet RoleAccessKeyID ar piekļuves atslēgas ID, kas tika atgriezta ar komandu 6. darbībā.

Piekļuves atslēga ir konfigurēta:


Tālāk mēs konfigurēsim slepeno piekļuves atslēgu, izmantojot Windows komandu “set”:

Operētājsistēmai Windows

komplekts AWS_SECRET_ACCESS_KEY =RoleSecretKey


Aizstājiet RoleSecretKey ar slepenās piekļuves atslēgas vērtību, kas tika atgriezta ar komandu 6. darbībā.

Operētājsistēmai Linux

eksportēt AWS_SECRET_ACCESS_KEY =RoleSecretKey


Aizstājiet AWS_SECRET_ACCESS_KEY ar slepeno piekļuves atslēgu, kas tika atgriezta ar komandu 6. darbībā.

Slepenās piekļuves atslēga ir veiksmīgi konfigurēta:


Visbeidzot, mēs konfigurēsim sesijas pilnvaru, lai izveidotu uz sesiju balstītu pieteikšanos. Šim nolūkam izmantojiet tālāk minēto komandu:

Operētājsistēmai Windows

komplekts AWS_SESSION_TOKEN =RoleSessionToken


Aizstājiet RoleSessionToken ar Session Token vērtību, kas ir atgriezta ar komandu 6. darbībā.

Operētājsistēmai Linux

eksportēt AWS_SESSION_TOKEN =RoleSessionToken


Aizstājiet RoleSessionToken ar Session Token vērtību, kas ir atgriezta ar komandu 6. darbībā.

Sesijas marķiera vērtība ir veiksmīgi konfigurēta:


Lai kopētu sesijas marķiera vērtību no CMD, nospiediet “CTRL+SHIFT+C” .

Pēc vides mainīgo konfigurēšanas, izmantojot šo komandu, pārbaudiet, vai lomu ir uzņēmies lietotājs:

aws sts iegūt zvanītāja identitāti


Komandas izvade pārbauda, ​​vai IAM loma ir bijusi veiksmīgi pieņemts lietotājs, jo ARN atdeve ir “arn:aws:sts::123456789012:ssumed-role/user-role/AWSCLI-Session” tā vietā “arn:aws:iam::123456789012:user/demo-user”:


Tā kā loma ietver ReadOnlyAccess atļauju, lietotājam vajadzētu būt iespējai tagad piesaistīt segmentus. Šim nolūkam CLI sniedziet šādu komandu:

aws s3 ls


Komandas izvade veiksmīgi iekļauj visu S3 spaini, kas pašlaik konfigurēts AWS kontā:


Tomēr lietotājs nevarēs piekļūt EC2 pakalpojumam, jo ​​uzņemtajai lomai nav atļaujas izmantot EC2 pakalpojumu. Lai to pārbaudītu, izmantojiet šo komandu:

aws ec2 apraksta gadījumus -- vaicājums 'Reservations[*].Instances[*].[VpcId, InstanceId, ImageId, InstanceType]'


Iepriekš lietotājs varēja piekļūt EC2 pakalpojuma informācijai. Tomēr, izpildot iepriekš minēto komandu, an 'Pieeja noliegta' radusies kļūda. Lietotājs ir veiksmīgi uzņēmies IAM lomu:


Tas viss ir no šīs sadaļas.

Bonusa padoms: atiestatiet vides mainīgos

Lai atgrieztos pie IAM lietotāja, t.i., demonstrācijas lietotāja, lietotājs var noņemt vides mainīgos, iestatot vides mainīgos tukšas virknes. Tālāk ir sniegtas komandas:

Operētājsistēmai Windows

IESTATĪT AWS_ACCESS_KEY_ID =
IESTATĪT AWS_SECRET_ACCESS_KEY =
IESTATĪT AWS_SESSION_TOKEN =


Linux

Izmantojiet tālāk minēto komandu:

atiestatīts AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY AWS_SESSION_TOKEN


Iepriekš minētās komandas atiestatīs vides mainīgos:


Pēc iepriekš minēto komandu izpildes konsolei tagad jāatgriež “demonstrācijas lietotājs” kā pašlaik pieteicies lietotājs, nevis pieņemtā loma, t.i., lietotāja loma. Šim nolūkam mēs izmantosim šādu komandu:

aws sts iegūt zvanītāja identitāti


Komandas izvade norāda, ka pašlaik pieteicies lietotājs ir demonstrācijas lietotājs:


Tāpat, lai pieteiktos kā root lietotājs, izpildiet “C:\Users%USERPROFILE%.aws” ceļu un noklikšķiniet uz akreditācijas datu faila:


Akreditācijas datu failā aizstājiet piekļuves atslēgas un slepenās piekļuves atslēgas vērtības ar saknes lietotāja piekļuves un slepenās piekļuves atslēgu:


Sniedziet šādu komandu CLI, lai pārbaudītu, vai akreditācijas dati ir pareizi konfigurēti:

aws konfigurēšana


Tālāk esošajā attēlā redzams, ka saknes lietotāja piekļuves atslēga un slepenā piekļuves atslēga ir veiksmīgi konfigurēta:


Tas ir viss no šīs apmācības sadaļas.

2. metode: -profila parametra izmantošana

Vēl viena lomas uzņemšanās metode ir CLI lauka “–profils” izmantošana. Šajā raksta sadaļā ir aprakstīta praktiskā īstenošana, uzņemoties lomu AWS, izmantojot profilu. Tālāk ir norādītas darbības, kas jāveic:

1. darbība. Izveidojiet IAM lietotāju

Lai izveidotu IAM lietotāju, piesakieties root lietotāja kontā, izmantojot CLI, izmantojot šādu komandu:

aws konfigurēšana


Akreditācijas dati jau ir konfigurēti šīs demonstrācijas CLI, kā parādīts komandas izvadē:


Uzzināt vairāk:

Lai izveidotu IAM lietotāju, norādiet šādu komandu CLI:

aws iam izveidot-lietotājs --lietotājvārds profila lietotājs


Lietotājs ir veiksmīgi izveidots. Saglabājiet lietotāja ARN, kā parādīts zemāk esošajā attēlā. Šī IAM lietotāja ARN tiks izmantots vēlāk šajā apmācībā. Pašlaik nav nevienas atļaujas, kas saistītas ar šo IAM lietotāju:


Lasīt vairāk:

2. darbība. Izveidojiet piekļuves atslēgu

AWS katram lietotājam ir piešķirts pāris piekļuves atslēgu pieteikšanās. Lai šim lietotājam izveidotu piekļuves atslēgas, norādiet tam šādu komandu:

aws iam Create-access-key --lietotājvārds profila lietotājs


Šī komanda atgriež piekļuves atslēgu kopu. Saglabāt uz AccessKeyId un Secret AccessKey kā tas būs nepieciešams, piesakoties AWS kontā:


Tagad, ja mēs piesakāmies AWS CLI, izmantojot šos AccessKeyId un SecretAccessKey, un piekļūstam jebkuram resursam, piemēram, S3 spainis, 'Pieeja noliegta' radīsies kļūda. Tas ir tāpēc, ka pašlaik nav nevienas atļaujas, kas saistītas ar IAM lietotāju. Lai pieteiktos AWS CLI, izmantojiet šo komandu un norādiet piekļuves atslēgas ID un slepeno piekļuves atslēgu, kā tas ir izveidots iepriekš:

aws konfigurēšana --profils profila lietotājs


Nomainiet “profila lietotājs” ar IAM lietotājvārdu, ko norādījāt, veidojot lietotāju.

Šeit mēs esam veiksmīgi pieteikušies AWS CLI kā IAM lietotājs:


Lai pārbaudītu, vai šim lietotājam ir tikai lasīšanas atļaujas S3 segmentam, norādiet šādu komandu CLI:

aws s3 ls --profils profila lietotājs


Aizstājiet profila lietotāju ar IAM lietotājvārdu, ko norādījāt, veidojot lietotāju.

Tā kā saknes lietotājs šim lietotājam nav piešķīris nekādas atļaujas, tas radīs “ Pieeja noliegta ” kļūda:

3. darbība. Izveidojiet uzticības politiku un IAM lomu

Uzticamības politika nosaka, vai lietotājs vai AWS resurss ir uzticama entītija lomas uzņemšanai un atļauju iegūšanai. Šīs uzticamības attiecības tiek izveidotas, atļauju politikā norādot IAM lietotāja vai AWS resursa ARN.

Lai izveidotu uzticamības politiku IAM, sniedziet šādu komandu CLI:

Operētājsistēmai Windows

notepad trust-policy.json


Nomainiet trust-policy.json ar polises preferences nosaukumu.

Operētājsistēmai Linux

jo trust-role-policy.json


Nomainiet trust-policy.json ar polises preferences nosaukumu.

Lietotāji var izmantot jebkuru teksta redaktoru pēc savas izvēles. Šai demonstrācijai mēs izmantojam piezīmju grāmatiņu:


Tas atvērs piezīmju grāmatiņu uzticamības politikas izveidei. Ielīmējiet šo politiku piezīmju grāmatiņā un nospiediet “CTRL+S” no tastatūras, lai lietotu un saglabātu izmaiņas:

{
'Versija' : '2012-10-17' ,
'Paziņojums, apgalvojums' : {
'Efekts' : 'Atļaut' ,
'Vairākums' : {
'AWS' : 'arn:aws:iam::012345678910:lietotājs/profila lietotājs'
} ,
'Darbība' : 'sts:AssumeRole'
}
}


Iepriekš minētajā politikā: AWS: Aizstājiet vērtību “arn:aws:iam::012345678910:user/policy-user” ar šajā sadaļā iepriekš izveidotā IAM lietotāja ARN.

Politika ir rediģēta piezīmju blokā:


Pēc tam mēs izveidosim IAM lomu un pievienosim tai iepriekš minēto uzticības politiku. Izmantojiet šo komandu, lai izveidotu IAM lomu:

aws iam izveidot lomu -- lomas nosaukums mirola --sume-role-policy-document fails: // trust-policy.json


Iepriekš minētajā komandā:

    • - lomas nosaukums: Nomainiet 'Mirole' ar jūsu izvēlēto IAM lomas nosaukumu.
    • –uzņemties-lomas-politikas-dokuments: Šajā laukā aizstājiet terminu “trust-policy.json” ar jūsu IAM uzticamības politikas nosaukumu

IAM loma ir veiksmīgi izveidota. Saglabājiet IAM lomu. Saglabājiet IAM lomas ARN, kā norādīts nākamajā attēlā. Šis ARN tiks izmantots, konfigurējot lietotāja profilu:


IAM pievienotā uzticamības politika nosaka, vai lietotājs ir uzticams, lai uzņemtos lomu. Atļauju politika nosaka, vai IAM lomai ir vajadzīgā atļauja veikt noteiktu darbību ar AWS pakalpojumiem.

Tā kā uzticības politika ir pievienota IAM lomai, nākamais solis ir pievienot atļauju politiku IAM lomai. Tālāk minētā komanda tiks izmantota, lai IAM lomai pievienotu atļauju politiku:

aws iam pievienot lomas politiku -- lomas nosaukums mirola --politika-arn 'arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess'


Šeit atļauju politika ir pievienota IAM lomai, izmantojot CLI:

4. darbība: konfigurējiet profilu

Lai lietotājs varētu uzņemties šo lomu, mēs vispirms konfigurēsim šo profilu, izmantojot AWS akreditācijas datus. Lai pievienotu šos pagaidu akreditācijas datus, sniedziet šādu komandu:

piezīmju grāmatiņa ~ / .aws / konfigurācija


Bonusa padoms: Notepad atrisiniet “Ceļš nav norādīts”.

Konfigurācijas failā būs AWS CLI [noklusējuma] iestatījums. Tomēr, ja piezīmju grāmatiņā tiek parādīts ziņojums “Sistēma nevar atrast norādīto ceļu”, ievadiet tālāk minēto komandu:

notepad .aws / konfigurācija


Linux lietotāji var izmantot 'jo' redaktors profila konfigurēšanai. Lietotāji var izmantot jebkuru vēlamo redaktoru, lai vietējā mašīnā atvērtu AWS konfigurācijas failu:


Programmā Notepad atvērtajā konfigurācijas failā rediģējiet šādas izmaiņas:

[ profila profils-lietotājs ]
loma_arn = arn:aws:iam::012345678910:role / mirola
avota_profils =profila lietotājs


Iepriekš minētajā fragmentā:

    • role_arn: Aizstājiet vērtību “arn:aws:iam::012345678910:role/myrole” ar IAM lomas ARN.
    • source_profile: Šajā laukā norādiet tā IAM lietotāja vārdu, kas tika izveidots šīs metodes 1. darbībā.

Pēc nepieciešamo izmaiņu veikšanas nospiediet “CTRL+S” no tastatūras, lai lietotu un saglabātu izmaiņas:


Tagad, lai pārbaudītu, vai lietotājs tagad var uzskaitīt S3 segmentus, norādiet šādu komandu CLI:

aws s3 ls --profils profila lietotājs


Iepriekš minētajā komandā: -profila lietotājs: Šajā laukā aizstājiet vērtību “profile-use” ar nosaukumu, ko norādījāt konfigurācijas failā.

Tā kā konfigurācijas failā esam norādījuši “profile-user”, mēs izmantosim to pašu nosaukumu ar komandu CLI. Iepriekš lietotājs nevarēja piekļūt AWS S3 pakalpojumam, jo ​​tam nebija piešķirtas atļaujas. IAM lomai ir S3 segmenta “ReadOnlyAccess” atļauja, un tāpēc, uzņemoties šo lomu, lietotājs var uzskaitīt segmentus no S3 informācijas paneļa:


Tas ir viss no šīs apmācības metodes.

3. metode: MFA (daudzfaktoru autentifikācijas) izmantošana

Iespējojot vairāku faktoru autentifikāciju, lietotājs var konfigurēt lietotāja kontam papildu drošības līmeni. Ja ir iespējota MFA, neautorizēti lietotāji nevar piekļūt lietotāja kontam, pat ja viņi norāda paroli un lietotājvārdu. MFA ir sešciparu kods, kas nepieciešams, lai pieteiktos kontā. Lai uzzinātu vairāk par vairāku faktoru autentifikāciju, skatiet šo rakstu:

Tālāk ir norādītas darbības, lai uzņemtos lomu MFA, izmantojot CLI.

1. darbība. Izveidojiet IAM lietotāju un iespējojiet MFA

Šajā darbībā lietotājs var izmantot CLI, lai izveidotu lietotāju, vai piekļūt AWS pārvaldības konsolei. Piesakieties saknes lietotāja kontā, izmantojot šādu komandu:

aws konfigurēšana


Komandas izvade tiek dota šādi:


Lai izveidotu lietotāju, CLI sniedziet šādu komandu:

aws iam izveidot-lietotājs --lietotājvārds mfa-lietotājs


Iepriekš minētajā komandā: -lietotājvārds: Nomainiet 'mfa lietotājs' ar jūsu izvēlēto IAM lietotājvārdu.

Lietotājs ir veiksmīgi izveidots. Saglabājiet lietotāja ARN, jo tas būs nepieciešams vēlāk šajā sadaļā. Pašlaik šim lietotājam nav piešķirtas nekādas atļaujas:


Lai iespējotu MFA, apmeklējiet AWS pārvaldības konsoli un meklējiet IAM pakalpojumu. Noklikšķiniet uz tā parādītajos rezultātos:


IAM pakalpojuma kreisajā navigācijas rūtī noklikšķiniet uz opcijas Lietotāji. Lietotāju informācijas panelī noklikšķiniet uz lietotājvārda, lai konfigurētu MFA:


Nākamajā saskarnē pieskarieties “Drošības akreditācijas dati” variants:


Ritiniet uz leju līdz Daudzfaktoru autentifikācija sadaļu un noklikšķiniet uz “Piešķirt MFA ierīci” poga:


Nodrošiniet a jēgpilns vārds iekš Ierīces nosaukums teksta lauks parādītajā saskarnē:


Ritiniet uz leju līdz sadaļai MFA ierīce. Lietotājam tiek piedāvātas dažādas iespējas MFA iespējot, piemēram, skenējot QR kodu, izmantojot drošības atslēgu vai aparatūras TOTP marķieri. Šai demonstrācijai atlasiet “Autentifikatora lietotne” variants:


Pieskarieties 'Nākamais' pogu interfeisa apakšā, lai turpinātu:


Noklikšķiniet uz “Rādīt QR kodu” kā parādīts zemāk esošajā attēlā:


Palaidiet lietojumprogrammu mobilajā vai klēpjdatorā, lai skenētu QR kodu. Pieskarieties “+” opcija no Symantec VIP saskarnes:


Play veikalā Symantec VIP ir nosaukts par VIP piekļuvi.

Nākamajā Symantec VIP saskarnē noklikšķiniet uz Skenējiet QR kodu poga interfeisa apakšā:


Skenējiet QR kodu no AWS MFA Autentifikatora lietotnes saskarne parādīts. Šis kods ģenerēs virkni kodu, kas būs nepieciešami, lai pieteiktos IAM lietotāja konsolē:


Tiks ģenerēta Symantec VIP lietotne sešciparu OTP pēc QR koda skenēšanas. Šie kodi turpinās nākt pēc katra 30 sekundes . Tālāk esošajā ekrānuzņēmumā ir parādīti divi ģenerētie kodi:


Norādiet kodus MFA kods 1 un MFA kods 2 teksta lauki MFA autentifikatora lietotnes saskarnē. Noklikšķiniet uz “Pievienot MFA” pogu pēc tam, lai iespējotu funkcionalitāti:


MFA ir veiksmīgi iespējota IAM lietotājam. To var pārbaudīt ar “Daudzfaktoru autentifikācija (MFA)” sadaļā “Drošības akreditācijas dati” cilne IAM lietotājs . Šajā sadaļā saglabājiet identifikatora vērtību, jo tā būs nepieciešama, uzņemoties lomu:

2. darbība. Pievienojiet politiku lietotājam

Lai lietotājs varētu uzņemties lomu, lietotājam ir jāspēj uzskaitīt IAM lomu, lai noteiktu, kuru lomu uzņemties, un atļauju uzņemties lomu. Lai aprīkotu lietotāju ar nepieciešamo atļauju, rīkojieties šādi no šīs apmācības 1. metodes

3. darbība. Izveidojiet uzticības politiku un IAM lomu

Nākamais solis ir izveidot uzticamības politiku, lai noteiktu, vai lietotājs ir uzticama entītija. Pēc tam šī uzticības politika tiks pievienota IAM lomai. Lai izveidotu uzticamības politiku un IAM lomu, pārejiet uz komandu uzvedni un izpildiet tās 1. metodi šajā rakstā.

4. darbība. Izveidojiet piekļuves atslēgu

Lai lietotājs tiktu autorizēts un autentificēts, tiek ģenerēts piekļuves atslēgu pāris, kas ir globāli unikāls visā AWS platformā. Šie atslēgu pāri tiek izmantoti, piesakoties AWS kontā. Lai izveidotu piekļuves atslēgas IAM lietotājam, izpildiet 1. metodi šajā rakstā.

5. darbība: konfigurējiet akreditācijas datus

AWS lietotājs var piekļūt AWS resursiem un pakalpojumiem tikai tad, ja akreditācijas dati ir pareizi konfigurēti. Šajā Metodes sadaļā mēs konfigurēsim IAM lietotāja akreditācijas datus, komandrindas interfeisam nodrošinot piekļuves atslēgu un slepeno piekļuves atslēgu. Šim nolūkam ievērojiet šīs apmācības 1. metodes.

6. darbība. Uzņemieties IAM lomu

Pēc veiksmīgas IAM lomas pievienošanas un uzticamības politikas ieviešanas lietotājs tagad var uzņemties IAM lomu. Šim nolūkam norādiet šādu komandu CLI:

aws iam Create-access-key --lietotājvārds mfa-lietotājs


Šeit atslēga ir veiksmīgi izveidota IAM lietotājam. Saglabājiet AccessKeyId un SecretAccessKey, jo tie būs nepieciešami, lai pieteiktos AWS kontā:


Nākamais solis ir konfigurēt piekļuves atslēgas AWS CLI. Izmantojiet tālāk minēto komandu, lai konfigurētu CLI:

aws konfigurēšana


Norādiet piekļuves atslēgu un slepeno piekļuves atslēgu CLI konfigurācijām:


Lai pārbaudītu, vai IAM lietotājs ir pieteicies AWS CLI, izmantojiet šo komandu:

aws sts iegūt zvanītāja identitāti


Komandas izvade tiek dota šādi, kas norāda, ka lietotājs ir veiksmīgi pieteicies AWS konsolē:


Lietotājam ir atļauja uzskaitīt IAM lomas AWS kontā. Tālāk sniegtā komanda tiek izmantota, lai uzskaitītu IAM lomas:

aws iam list-lomas -- vaicājums 'Lomas[?RoleName == 'mfa-role'].[RoleName, Arn]


Iepriekš minētajā komandā: RoleName: Šajā laukā aizstājiet vērtību “mfa-role” ar savas IAM lomas nosaukumu.

Komandas izvade tiek dota šādi:


Lai uzņemtos IAM lomu ar MFA, izmantojiet komandu uzņemties lomu ar papildu parametriem, piemēram, sērijas numuru un marķiera kodu. Norādiet šādu komandu CLI:

aws sts uzņemties lomu -- loma-arn 'arn:aws:iam::123456789012:role/m-role' -- lomas sesijas nosaukums AWSCLI sesija --sērijas numurs 'arn:aws:iam::012345678910:mfa/admindevice' ---token-kods '123456'


Iepriekš minētajā komandā:

    • – loma-arn: Aizstājiet šī lauka vērtību ar savas IAM lomas ARN.
    • -lomas-sesijas-nosaukums: Šajā laukā lietotājs var norādīt jebkuru izvēlētu sesijas nosaukumu.
    • -sērijas numurs: Aizstājiet šī lauka vērtību ar vērtību Identifier no MFA saskarnes, kas tika saglabāta iepriekš.
    • – marķiera kods: Šī vērtība ir jāaizstāj ar pašreizējo kodu, kas tiek parādīts Symantec VIP saskarnē.

Pašreizējais Symantec VIP kods ir norādīts šādi. Tas pats kods tiks izmantots komandas –token-koda vērtībā:


Komandas izvadē būs pagaidu akreditācijas dati, piemēram, sesijas marķieris, piekļuves atslēga, slepenās piekļuves atslēga utt.:

7. darbība: konfigurējiet vides mainīgos

Atgrieztās piekļuves atslēgas un sesijas pilnvaras tagad tiks izmantotas, lai izveidotu uz sesiju balstītu pieteikšanos un uzņemtos lomu. Detalizēta vides konfigurēšanas ieviešana ir apspriesta no 1. metodes.

Pēdējās domas

Lai uzņemtos lomu, izmantojot CLI, ir trīs metodes, t.i., izmantojot STS (drošības marķiera pakalpojumu), profila parametru vai MFA (daudzfaktoru autentifikāciju). Lai lietotājs varētu uzņemties lomu, vispirms ir jāizveido uzticamības politika. Šī uzticamības politika nosaka, vai lietotājs ir uzticama vienība. Šī funkcionalitāte ir nepieciešama, jo tā risina IT ekspertu un privātpersonu drošības problēmas. Turklāt lietotājs var uzņemties lomu tikai tad, ja viņam ir nepieciešamās atļaujas.

Kad lietotājs uzņemas lomu AWS, tiek izveidota uz sesiju balstīta pieteikšanās, lai nodrošinātu ierobežotu laiku lietotājam ar vēlamajām atļaujām. Tiek ģenerēts marķieris, kura derīguma termiņš beidzas pēc noteikta laika, un tādējādi lietotājs vairs nevar veikt administratīvo uzdevumu ar AWS resursiem. Šajā rakstā ir sniegta trīs metožu praktiska īstenošana, lai uzņemtos lomu AWS CLI.