AWS Güvenliğine Giriş

Geliştiriciler için AWS Güvenliğini Kullanma

Rahul Singh

Technical Product Manager

Kurs önkoşulları

 

  • Temel AWS güvenliği bilgisi
  • Bulut bilişim kavramlarını anlama
  • AWS Güvenliği ve Maliyet Yönetimi kavramları

 

 

AWS Güvenliği ve Maliyet Yönetimi Kavramları kurs başlık kartı

Geliştiriciler için AWS Güvenliğini Kullanma

Kurs hedefleri

 

  1. Kimlik: kim çağırıyor
  2. Yetkilendirme: neye erişebilirler
  3. Sırlar ve şifreleme: veriyi korumak
  4. Kanıt: sonra ne oldu

Dersin kapsadığı her alan için omurga boyunca dizilmiş dört numaralı şerit. Bir: Kimlik, Bölüm 1. İki: Yetkilendirme, Bölüm 2. Üç: Sırlar ve şifreleme, Bölüm 2 ve 3. Dört: Kanıt, Bölüm 3. Solda turuncu bir ok, bu video, birinci şeridi işaret ediyor.

Geliştiriciler için AWS Güvenliğini Kullanma

Kodun bir pipeline ile dağıtılır

Soldan sağa akış. Adım 1: Build, Test, Deploy aşamalarını içeren "Your pipeline" kutusu. Adım 2: "You" kutusundan gelen "git push" okuyla ona akış. Adım 3: boru hattının altında "its own identity" yazılı turuncu rozet. Ok AWS kutusuna devam ediyor.

Önce tek bir terim

  • Pipeline, kodunu derleyen, test eden ve dağıtan otomasyondur
  • Sen push edersin, arada insan yoktur
Geliştiriciler için AWS Güvenliğini Kullanma

Yanlış nedenle başarısız olan bir dağıtım

Kod değiştiğinde, aslında kimin izinleri kontrol edilir?
  1. Sen bir değişiklik push edersin

Dikey akışın ilk adımı. "You" kutusu, bir kod değişikliği push ediyor.

Geliştiriciler için AWS Güvenliğini Kullanma

Yanlış nedenle başarısız olan bir dağıtım

Kod değiştiğinde, aslında kimin izinleri kontrol edilir?
  1. Sen bir değişiklik push edersin

  2. Pipeline'ın çalışır

Dikey akış. Adım 1: Sen, kod değişikliği push ediyorsun. Aşağı ok, adım 2: dağıtımı çalıştıran pipeline'ına.

Geliştiriciler için AWS Güvenliğini Kullanma

Yanlış nedenle başarısız olan bir dağıtım

Kod değiştiğinde, aslında kimin izinleri kontrol edilir?
  1. Sen bir değişiklik push edersin

  2. Pipeline'ın çalışır

  3. Dağıtım durur: AccessDenied

İlk içgüdü: "Kendi izinlerime bakayım."

Dikey akış. Adım 1: Sen, kod değişikliği push ediyorsun. Adım 2: pipeline dağıtımı çalıştırıyor. Adım 3: AWS isteği değerlendirip AccessDenied döndürüyor.

Geliştiriciler için AWS Güvenliğini Kullanma

Aslında ne oldu

Soldan sağa akışın ilk adımı. "You" etiketli kutu, katılımın burada bitiyor.

  1. Sen push edersin. Katılımın burada biter
Geliştiriciler için AWS Güvenliğini Kullanma

Aslında ne oldu

Soldan sağa akış. "You" kutusundan "Your pipeline" kutusuna ok. Pipeline'ın altında "deploy-role" rozeti.

  1. Sen push edersin. Katılımın burada biter
  2. Pipeline, ekibinin oluşturduğu bir role olarak dağıtır
Geliştiriciler için AWS Güvenliğini Kullanma

Aslında ne oldu

Soldan sağa akış: You'dan Your pipeline'a, oradan AWS'ye. Pipeline'ın altında "deploy-role" rozeti, AWS'den bu rozete dönen kesikli "checks" oku, sana değil.

  1. Sen push edersin. Katılımın burada biter
  2. Pipeline, ekibinin oluşturduğu bir role olarak dağıtır
  3. AWS o rolu değerlendirir
Geliştiriciler için AWS Güvenliğini Kullanma

Aktör ve principal

Aktör

İşi harekete geçiren kişi.

Burada: sen.

İşi harekete geçiren aktörü simgeleyen insan figürü ikonu.

Geliştiriciler için AWS Güvenliğini Kullanma

Aktör ve principal

Aktör

İşi harekete geçiren kişi.

Burada: sen.

Principal

İstek geldiğinde AWS'nin değerlendirdiği kimlik.

Burada: pipeline'ın rolü.

İşi harekete geçiren aktörü simgeleyen insan figürü ikonu.

Principal'ı simgeleyen bir ikon.

Geliştiriciler için AWS Güvenliğini Kullanma

Aktör ve principal

Aktör

İşi harekete geçiren kişi.

Burada: sen.

Principal

İstek geldiğinde AWS'nin değerlendirdiği kimlik.

Burada: pipeline'ın rolü.

  • Lambda: execution role. ECS: task role. İsim değişir, principal aynı
  • İstisna: terminalindeki uzun ömürlü anahtar, yani principal IAM kullanıcısıdır

İşi harekete geçiren aktörü simgeleyen insan figürü ikonu.

AWS'nin aktör yerine principal'ı kontrol ettiğini gösteren bir ikon.

Geliştiriciler için AWS Güvenliğini Kullanma

Aynı dağıtım, iki rol

Rol A (AdministratorAccess'in şekli)

  • Her bucket'ı oku
  • Her anahtarı kullan
  • Her fonksiyonu güncelle

Rol B

  • Bir bucket'ı oku
  • Bir anahtarı kullan
  • Bir fonksiyonu güncelle

Önek: bucket içinde klasör benzeri bir yol

Altı farklı politikaya erişimi olan, tam yetkili bir rolü gösteren görsel.

Yalnızca tek bir politikaya erişimi olan dar yetkili bir rolü gösteren görsel.

Geliştiriciler için AWS Güvenliğini Kullanma

Etkilenme alanı (blast radius)

Geniş rol

Ele geçirilirse: hesaptaki her bucket, önek ve nesneye erişir.

Dar rol

Ele geçirilirse: tek bir bucket'ta, tek bir öneğe erişir. Fazlası yok.

Tüm hesabın her kısmına ulaşan geniş rolü gösteren eşmerkezli halkalar.

Yalnızca en içteki nesne ve önek halkalarına ulaşan dar rolü gösteren eşmerkezli halkalar; diğer kısımlar dokunulmamış.

Geliştiriciler için AWS Güvenliğini Kullanma

Asgari yetki, pratikte

Bir rol işi için gerekeni yapmalı, fazlasını değil.

  • AWS yönetilen, ör. AmazonS3ReadOnlyAccess: tüm bucket'lar. Müşteri yönetimli: sende, tek bir öneğe kadar
  • Kapsam ve ömür: uzun ömürlü anahtar yerine kısa ömürlü kimlik bilgileri
  • AWS altyapıyı güvenceye alır
  • Rollerinin ne kadar geniş olacağı senin kararın ve deposunda yaşar

Örnek: raporlar-bucket okuyucu rolü İki allow. Başka hiçbir yetki yok.

  • "Kim ne yapabilir"i belirleyen hizmet IAM üzerinde hiçbir şey yok

Bir rolün izin listesinde kırmızıyla çizilmiş üç fazla izin ve yeşilde tutulan iki gerekli izin.

Geliştiriciler için AWS Güvenliğini Kullanma

Hadi pratik yapalım!

Geliştiriciler için AWS Güvenliğini Kullanma

Preparing Video For Download...