Cum să vă accesați contul AWS

(Nicolo Marchesi) (3 dec. 2020)

Cum să vă accesați contul AWS

Salut. Tocmai ți-ai creat primul cont AWS și abia aștepți să te scufunzi în toate serviciile și tehnologiile interesante pe care AWS ți le oferă pentru a începe să construiești următorul lucru important. Dar, așteptați o secundă … vă veți conecta cu acreditările contului dvs. root? Sau este mai bine să generați un utilizator nou? Sau poate folosiți un rol?

Încetiniți un minut și, până la sfârșitul postării pe blog, promit că veți putea alege cel mai bun mod pentru a accesa contul dvs. AWS în siguranță .

Atenție, totuși, vom lua în considerare accesul la un singur cont aws, deoarece vom acoperi strategiile cu mai multe conturi data viitoare . Trebuie să mergem înainte să putem alerga, nu?

Conturi și resurse

Fiecare călătorie incredibilă cu AWS începe cu conturi și resurse, iar un cont este exact ca o cutie goală.

Lucrurile pe care le puteți pune în contul dvs. pot fi orice este legat de serviciile AWS, de exemplu, rețele, mașini virtuale, containere și așa mai departe.

Dar cea mai importantă parte este că în mod implicit, niciun cont nu partajează nicio resursă, astfel încât să nu poată intra sau ieși nimic între două conturi AWS diferite. Și acest lucru este minunat pentru a vă împărți volumul de muncă și pentru a vă asigura că doar persoanele potrivite accesează totul.

IAM – Identitate & Management acces

În cadrul fiecărui cont, IAM este acolo pentru a proteja resursele din contul dvs., gestionând entitățile care pot efectua unele acțiuni asupra resurselor respective:

  • OMS – ce identități
  • CE – poate face unele acțiuni
  • UNDE – pe unele resurse
  • CUM – și a îndeplinit unele condiții

Le definesc ca 4W și, deocamdată, va trebui să ne concentrăm doar pe primele 3.

La început – utilizatorul root

Când v-ați conectat după ce ați creat contul AWS, ați utilizat acel cont utilizator root .

Acest lucru este diferit de celelalte pe care le puteți crea deoarece:

  • Creat la înregistrarea contului
  • Dvs. vă puteți conecta utilizând adresa de e-mail și parola pe care le-ați utilizat pentru a crea contul
  • Puteți accesa informațiile de facturare
  • Are acces nelimitat la toate resursele din contul dvs.

Acest utilizator este foarte important și ar trebui să-l protejați în cel mai bun mod posibil. Este un super-administrator de steroizi, deoarece poate vizualiza informațiile de facturare și poate face totul cu toate resursele dvs.

Deci, primul lucru de făcut ar trebui să fie:

  • Activați autentificarea cu mai mulți factori (MFA) și salvați codul QR într-un loc sigur
  • Ștergeți toate cheile de acces legate de acest utilizator pentru a dezactiva accesul programatic (oricum nu ați avea nevoie de acest lucru!)

Și următorul lucru ar trebui să fie să decideți cum veți accesa acest cont de acum înainte.

Din interiorul AWS

Să ne concentrăm pentru moment asupra a ceea ce ne oferă AWS fără să ne bazăm pe terți. Acest lucru este util mai ales dacă ne concentrăm asupra acestui cont unic, deoarece trebuie să stăpânim cele trei blocuri IAM: utilizator, grupuri și roluri.

Utilizatori

Vă amintiți utilizatorul root? Utilizatorii IAM sunt același tip de entitate, dar diferit de utilizatorul root. Nu au permisiuni de facturare implicite și acces de administrator (cu excepția cazului în care le oferiți … ceea ce nu ar trebui).

Cu un utilizator, putem crea o entitate care se poate conecta la consola web AWS sau cu acces programatic printr-un set de acreditări (o cheie de acces și o cheie de acces secret) care sunt fixe și nu se vor schimba în timp. Împreună cu cheile SSH / HTTPS pentru AWS CodeCommit sau acreditări pentru spațiile de chei Amazon (pentru Apache Cassandra)

  • acreditări de conectare pentru consola web
  • acreditări cheie de acces și secrete pentru acces programatic pentru API-uri, CLI și SDK
  • Chei SSH / HTTPS pentru AWS CodeCommit
  • acreditări pentru spațiile de chei Amazon (pentru Apache Cassandra)

Acces granular

Este complet posibil ca un utilizator IAM să activeze una sau mai multe chei de acces în funcție de modul în care doriți să se comporte acel utilizator.De exemplu:

  • Un analist de date care trebuie să verifice doar datele analitice de pe consola web, dar fără a avea nevoie de acces programatic
  • Un DevOps fără server care trebuie să efectueze acțiuni pe consola și utilizați CLI pentru a furniza unele resurse vor avea nevoie de ambele acces
  • Un dezvoltator care lucrează la un singur depozit și nu trebuie să interacționeze cu resursele AWS va avea chei SSH / HTTPS pentru AWS CodeCommit.

Rețineți că partajare acreditări de utilizator IAM este un mare nu, deoarece este primul pas pentru a pierde acreditările și guvernanța și a te deschide în fața amenințărilor la adresa securității.

Nu Nu vrei ca contul tău de producție să fie șters complet în favoarea unui set complet de mineri de bitcoin, nu-i așa?

Aplică securitatea

O altă caracteristică interesantă a utilizatorilor AWS IAM este să poți aplica parola complexitate (care este în mod implicit destul de mare cu o lungime cuprinsă între 8–128 chara cters, minimum 3 caractere speciale și să nu fie identic cu numele contului AWS sau adresa de e-mail) și timpul de expirare a parolei pentru a vă asigura că după un anumit timp utilizatorii dvs. vor schimba parola.

În partea de sus din aceasta, puteți activa MFA cu diferite dispozitive:

  • Un dispozitiv MFA virtual cu o aplicație de autentificare instalată pe dispozitivul mobil sau pe computer
  • O cheie de securitate U2F, cum ar fi YubiKey sau orice alt dispozitiv U2F compatibil
  • Un alt dispozitiv hardware MFA, cum ar fi simbolul Gemalto

În general, există o abordare granulară, deoarece puteți avea mijloace specifice pentru fiecare utilizator IAM .

Când se utilizează

Dacă aveți foarte puțini utilizatori (între 1-5) cu permisiuni precise legate de fiecare, utilizatorii IAM pot economisi ceva timp în configurația inițială și accesul la consolă. Ferește-te de acreditările statice deoarece sunt probleme de securitate substanțiale, deci tratează-le cu grijă extremă. Sau utilizați AWS CLI get-session-token pentru a genera acreditări temporare din cele statice.

Grupuri

Nu este o entitate în sine, dar Grupurile IAM sunt acolo pentru a grupa utilizatorii IAM împreună și acordați același set de permisiuni unui grup de utilizatori. Acest lucru netezește puțin marginile aspre ale utilizatorilor IAM, dar în general se aplică aceleași lucruri pe care le-am văzut pentru utilizatorii IAM.

Un lucru frumos de reținut este că un utilizator IAM poate avea în continuare politici personale în timp ce este asociat. cu un grup, cu permisiunea rezultată este egal cu îmbinarea grupului cu cele personale.

Aceasta ar trebui să fie mai mult o excepție decât fluxul de lucru tipic. Cu prea multe permisiuni individuale, creăm multe politici care nu pot fi menținute și pierdem prezentarea generală a permisiunilor din cont.

Când se utilizează

Dacă aveți puțini utilizatori (între 5-15), grupurile IAM pot salva unele dintre problemele legate de gestionarea și configurarea fiecărui utilizator IAM. Dar se aplică aceeași considerație ca și utilizatorii IAM, deci, dacă este posibil, evitați-le dacă nu lucrați la un singur cont.

Roluri

Și aici suntem rolurile AWS. Rolurile IAM pot avea permisiuni (la fel ca utilizatorii) și se pot conecta la consolă (din nou ca utilizatori …). În loc să fie asociat în mod unic cu o singură persoană, oricine are nevoie de ea poate să-și asume un rol.

o persoană poartă capacul al rolului pe care dorește să îl asume și

sigla rolului IAM tocmai am câștigat mult mai mult sens, nu?

Acreditări temporare

O altă diferență cheie față de utilizatorii IAM este că rolurile IAM nu au acreditări statice. Când cineva își asumă rolurile, este generat și dat un set de acreditări temporare . Este posibil să personalizați cât vor dura acele acreditări și să restricționeze în continuare accesul, dacă este necesar.

Timpul poate fi setat de la 900 de secunde (15 minute) până la 12 ore, dar, în opinia mea, setarea unei ore- expirarea lungă este cel mai bun compromis între securitate și performanță.

Monitorizarea CloudTrail

Voi menționa acest lucru, deoarece unii oameni nu folosesc roluri, deoarece consideră că nu pot audita ce rolurile pot face. Adevărul este că poți și ar trebui. Activând monitorizarea Cloudtrail, puteți vedea toate acțiunile efectuate în interiorul contului dvs., astfel încât să puteți ști oricând ce se întâmplă.

Cont încrucișat

Acest lucru va fi discutat mai detaliat într-un alt blog post, deoarece ne concentrăm pe conturi unice, dar, deocamdată, fiți conștienți de faptul că rolurile IAM pot fi utilizate pentru a da acces la alte roluri IAM sau la utilizatorii IAM.

Și acest lucru este incredibil de util.

Punct de intrare necesar

Și acum pentru dezavantaje. Din păcate, nu puteți oferi acces direct la consolă și acreditări temporare unui rol IAM. În primul rând, trebuie să aveți configurat un utilizator sau un rol federalizat (mai multe despre acest lucru în câteva paragrafe) pentru a oferi acces la un rol IAM.

Când se utilizează

Întotdeauna. Singurul fapt că rolurile IAM sunt neacordat cu acreditări statice le face cel mai bun mod de a accesa cloud-ul. Combinați-le cu capacitatea de a monitoriza acțiunile rolurilor IAM și de a impune securitatea chiar și cu MFA. Singurul dezavantaj este că este un pic mai multă configurație, dar este un preț scăzut de plătit în opinia mea.

Din afara AWS

Și acum, să vedem ce putem face atunci când intrați în domeniul identităților corporative. Mă refer la utilizarea unui furnizor de identitate ca sursă de identitate și conectare cu adresa de e-mail și parola corporativă.

Federație

Dar ce înțelegem prin federație? Pe de o parte, avem furnizorul de identitate. Aceste sisteme conțin un director de utilizatori și unele programe software care pot comunica prin protocoale de federație specifice. Toate datele utilizatorilor noștri sunt Identități .

Pe de altă parte, există AWS-ul dvs. Contează ca Consumator de identitate . Menține o referință la identități fără a le salva. Pe această parte, avem în general niveluri de autorizare mult mai granulare (mulțumesc, IAM!).

Deci, federația este relația de încredere care face ca consumatorul de identitate să poată face referire la identitățile din furnizorul de identitate.

Federația SAML

Cea mai comună definiție pentru limbajul de marcare a securității (SAML) ) este un standard deschis pentru schimbul de date de autentificare și autorizare între părți. Aceasta înseamnă că ne putem folosi identitățile pentru a ne conecta la AWS și chiar pentru a obține acreditări temporare asumându-ne roluri. Este o abordare generalistă pe care o puteți aplica pentru aproape toți furnizorii de identitate.

Relația de încredere

Pentru a configura federația între cele două părți, trebuie să creăm și să gestionăm un Furnizor de identitate IAM . Acest lucru este necesar, deoarece reprezintă furnizorul real de identitate și deține secretul comun care permite celor două părți să comunice. Mai mult, în cadrul fiecărui rol pe care vrem să-l asume utilizatorii noștri, vom defini o politică de încredere pentru a permite entităților legate de IAM Furnizorul de identitate își asumă rolul:

Management personalizat

Lucrul este că gestionarea federației de unul singur poate fi o provocare și consumatoare de timp la început. Există câteva concepte de înțeles bine și trebuie să creați o grămadă de entități, relații și lucruri personalizate pentru ca acest lucru să se întâmple. Pentru a vă face o idee, puteți găsi un exemplu de tutorial complet aici .

Când se utilizează

În general, aceasta este o abordare excelentă și testată în luptă, care va funcționa în aproape toate cazurile. Cu toate acestea, gestionarea personalizată a identităților poate fi dificilă și consumatoare de timp pentru persoanele neexperimentate.

Cazurile de utilizare tipice sunt dacă doriți să gestionați acest lucru singur în scopuri de securitate sau de conformitate. Nu aveți acces la organizația dvs. AWS sau AWS SSO nu acceptă încă furnizorul dvs. de identitate.

AWS SSO

Acesta este serviciul SSO gestionat și cloud care permite vă conectați furnizorul de identitate la contul dvs. AWS.

Organizația AWS

Pentru a configura AWS SSO, va trebui să configurați organizațiile AWS și, deocamdată, vă puteți gândi la gestionați mai multe conturi AWS. Pentru a menține lucrurile pe scurt, trebuie să știți că configurarea unei organizații AWS necesită permisiuni extinse (și anume utilizatorul root).

Stocare identitate internă

În mod implicit, AWS SSO oferă un director pentru a stoca informațiile dvs. de utilizator și acreditările pentru a servi direct ca furnizor de identitate. Este minunat dacă nu aveți deja un furnizor de identitate sau nu doriți să vă confruntați cu configurarea unuia.

Stocarea externă a identității

Dar să presupunem că organizația dvs. folosește deja unele Director utilizator, cum ar fi Microsoft Active Directory. În acest caz, îl puteți conecta la AWS SSO, eliminând necesitatea de a menține două directoare distincte cu aprovizionare automată .

Atenție, totuși, că această caracteristică este acceptată numai pentru un set limitat de furnizori de identitate:

Autentificare multi-factor

Cu AWS SSO, puteți configura un dispozitiv MFA pentru utilizatorii dvs. din cadrul serviciului. În acest moment, acceptă aplicații Authenticator precum Google Authenticator și chei de securitate precum Yubikey. Soluția internă este interesantă, dar nu are suport MFA dacă este configurată de un furnizor extern de identitate.

Când se utilizează

Este standardul sugerat de AWS și poate fi modalitatea implicită de urmat dacă nu sunteți sigur cum să procedați. Cu toate acestea, există cel puțin câteva cerințe pe care trebuie să le bifați pentru a profita la maximum de această soluție:

v-ați configurat deja organizația AWS, și aveți acces la contul root. Doriți să vă păstrați identitățile în AWS SSO sau să utilizați un furnizor de identitate susținut de aprovizionare automată.

Note finale

Deci, am stabilit bazele pentru a accesa un singur cont AWS, iar acum ar trebui să aveți elementele pentru a alege cea mai bună metodă pentru cazul dvs. de utilizare specific. Vom folosi acest lucru pentru a acoperi terenul către gestionarea mai multor conturi și organizațiile AWS în următoarea postare pe blog.

Leapp

Ca ultimă notă, sfătuiesc cu tărie pe toți să folosească un instrument care îi ajută să stocheze toate datele necesare pentru a se conecta la contul lor AWS. Eu și echipa noastră dezvoltăm un instrument open-source care acceptă toate aceste cazuri de utilizare, așa că nu ezitați să verificați:

Noovolari / leapp

Leapp este tovarășul tău de zi cu zi pentru a-ți accesa cloud-ul; conceput pentru a funcționa cu API-uri, CLI-uri și SDK-uri ale furnizorilor de cloud. Este …

github.com

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *