AWS CloudFront: Vă prezentăm Origin Access Control (OAC) pentru a vă asigura S3 Origins 04 ianuarie 2023

Publicat: 2023-01-04

Amazon CloudFront este o rețea globală de livrare de conținut (CDN) lider de la Amazon Web Services (AWS), renumită pentru furnizarea de aplicații, videoclipuri, site-uri web și API-uri către spectatorii de pe tot globul la o viteză fulgerătoare.

Amazon S3 este una dintre cele mai utilizate arhitecturi AWS care este folosită ca origine pentru a găzdui conținut și CloudFront, care este folosit pentru a le livra spectatorilor. Când folosesc această arhitectură, clienții pot folosi identitatea de acces la origine (OAI) a CloudFront pentru a securiza accesul la bucket S3 numai la CloudFront. Cu toate acestea, recent, AWS a introdus o nouă funcție numită OAC, care înlocuiește OAI cu unele caracteristici noi.

1. Ce este OAC?

AWS a anunțat recent noua funcție Origin Access Control (OAC) pentru CloudFront. Acesta este un succesor al Origin Access Identity (OAI). Conform arhitecturii noastre, folosim Amazon S3 ca origine pentru a găzdui conținut precum site-uri web și videoclipuri și folosim CloudFront pentru a le livra spectatorilor. Acum folosim identitatea de acces la origine (OAI) a CloudFront pentru a securiza accesul la origine S3 numai la CloudFront.

2.Cum este mai sigur decât OAI?

În timp ce OAI oferă o modalitate sigură de a accesa originile S3 la CloudFront, are limitări, cum ar fi neacceptarea configurațiilor granulare de politică, solicitări HTTP și HTTPS care utilizează metoda POST în regiunile AWS care necesită AWS Signature Versiunea 4 (SigV4) sau integrarea cu SSE -KMS.Pentru a consolida securitatea și a aprofunda integrările caracteristicilor, AWS a introdus controlul accesului la origine (OAC), o nouă caracteristică care securizează originile S3 permițând accesul numai la distribuțiile desemnate. OAC se bazează pe cea mai bună practică AWS de utilizare a principalilor de servicii IAM pentru autentificarea cu originile S3.

În comparație cu OAI, unele dintre îmbunătățirile notabile oferite de OAC includ:

  • OAC este implementat cu practici de securitate îmbunătățite, cum ar fi acreditările pe termen scurt, rotații frecvente de acreditări și politici bazate pe resurse. Ele întăresc poziția de securitate a distribuțiilor dvs. și oferă protecție mai bună împotriva atacurilor precum adjunctul confuz.
  • Suport complet pentru metode HTTP - OAC acceptă GET, PUT, POST, PATCH, DELETE, OPTIONS și HEAD.
  • SSE-KMS – OAC acceptă descărcarea și încărcarea obiectelor S3 criptate cu SSE-KMS.
  • Accesați S3 în toate regiunile AWS – OAC acceptă accesarea S3 în toate regiunile AWS, inclusiv regiunile existente și toate regiunile viitoare. În schimb, OAI va fi acceptată numai în regiunile AWS existente și în regiunile lansate înainte de decembrie 2022.

3. Cum putem crea/activa această funcție?

  1. Conectați-vă la AWS Management Console și deschideți consola CloudFront.
  2. Alegeți Creare distribuție.
  3. În secțiunea Configurare Origine, selectați o origine S3 din lista derulantă Domeniu Origin.
  4. Opțional, puteți configura o cale de origine pentru a o adăuga la numele de domeniu de origine pentru cererile de origine.
  5. Introduceți un nume pentru a identifica în mod unic configurația de origine curentă.
  6. Alegeți setările de control al accesului Origin.

7. Puteți alege un control de acces la origine existent sau puteți crea o nouă setare de control cu ​​una dintre cele trei opțiuni de semnare.

creați setarea de control

  1. Urmați instrucțiunile detaliate de aici despre cum să configurați restul setărilor
  2. Selectați „Creați distribuție” în partea de jos a paginii după ce au fost alese toate setările de configurare
  3. Odată ce distribuția este creată cu succes, trebuie să actualizați politica S3 bucket, puteți face referire la declarația de politică furnizată pe pagina cu detalii despre distribuție (Figura 3)
  4. Rețineți că politica furnizată include numai permisiuni de citire a obiectelor din S3. Dacă doriți să încărcați și obiecte în S3, trebuie să actualizați politica cu permisiuni suplimentare pentru „ s3:PutObject ”.

4.Cum putem configura OAC când actualizăm o distribuție CloudFront existentă?

  1. Conectați-vă la AWS Management Console și deschideți consola CloudFront.
  2. Selectați una dintre distribuțiile din listă
  3. Selectați fila Origins și alegeți originea S3 pe care doriți să o asociați cu o setare de control al accesului la origine
  4. Dacă originea nu folosește niciun mecanism de acces, se va afișa ca public. Dacă originea folosește deja OAI, se va afișa ca „Identificări de acces vechi”. Pentru a utiliza OAC, selectați „Setări control acces la origine” și alegeți un control acces la origine existent sau creați o nouă setare de control cu ​​una dintre cele trei opțiuni de semnare.

Editați originea

5. Trebuie să actualizați politica S3 pentru a permite principalului serviciului CloudFront IAM și resursei dvs. de distribuție să acceseze compartimentul S3. Spre deosebire de configurarea accesului la origine la crearea unei distribuții în care puteți actualiza politica numai după ce distribuția este creată, atunci când actualizați o distribuție, puteți și vă recomandăm într-adevăr să actualizați politica pentru a permite accesul atât la OAI, cât și la OAC, înainte de salvare. configurația de origine, pentru a reduce timpul de întrerupere a serviciului la zero. Următorul este un exemplu de politică care permite accesul atât la OAI, cât și la OAC.

Cod nou

6. Similar cu configurarea OAC la crearea unei distribuții, politica furnizată de CloudFront include numai permisiuni de citire a obiectelor din S3. Dacă doriți să încărcați și obiecte în S3, trebuie să actualizați politica cu permisiuni suplimentare pentru „ s3:PutObject

7. În partea de jos a paginii, alegeți Salvare

5. Cum putem activa SSE-KMS pentru CloudFront OAC?

AWS Well-Architected recomandă să ne protejăm datele în tranzit și în repaus. Dacă folosim OAI, datele dumneavoastră sunt deja protejate în tranzit și ne putem proteja datele în repaus utilizând Criptarea pe server cu chei gestionate de Amazon S3 (SSE-S3).

Trebuie să vă configuram politica KMS pentru a permite principalului serviciului CloudFront IAM să acceseze cheile noastre KMS. Adăugarea cheii de condiție aws:SourceArn permite doar unei anumite distribuții CloudFront să acceseze obiectele criptate SSE-KMS folosind această politică de cheie.

  1. Deschideți consola KMS.
  2. Selectați cheia KMS gestionată de client care este utilizată pentru a cripta conținutul din originea S3
  3. Selectați fila Politică cheie

4. Actualizați politica cheii KMS pentru a oferi acces la Principiul serviciului CloudFront

principiul serviciului

6. Trebuie să migrez la OAC?

Pentru a răspunde la această întrebare, CloudFront acceptă atât noul OAC, cât și vechiul OAI. AWS recomandă utilizarea OAC pentru cele mai recente bune practici de securitate și funcționalități suplimentare. O limitare a OAI față de OAC va fi că OAI va fi acceptată numai în regiunile AWS existente și în regiunile lansate înainte de decembrie 2022, dar CloudFront Origin Access Control este acum disponibil în întreaga lume, cu excepția regiunilor AWS China.

Încheierea,

Controlul accesului la origine AWS CloudFront este acum disponibil la nivel global. În acest blog, am încercat să explic ce este OAC și cum este diferit de OAI în consola de management AWS în sine. Deși OAI oferă o securitate amplă, OAC este recomandat pentru securitate îmbunătățită, deoarece securizează originile S3, permițând accesul numai la distribuțiile desemnate.

Acest blog a fost scris de Abinash Bhutia