Gizlileri koddan ve günlüklerden uzak tut

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

Rahul Singh

Technical Product Manager

Her hassas şey gizli değildir

Üç tür string

  • Gizli: bir yabancı senin gibi davranabilir
  • Hassas veri: bir kişi ifşa olur
  • Yapılandırma: kazanacak bir şey yok

Üç katmanlı satır: gizli, hassas veri ve yapılandırma karşılaştırılıyor. Her satırda iki örnek değer ve bir yabancının bunlarla yapabilecekleri var; senin gibi davranmaktan hiçbir şey kazanamamaya kadar.

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

Her hassas şey gizli değildir

Üç tür string

  • Gizli: bir yabancı senin gibi davranabilir
  • Hassas veri: bir kişi ifşa olur
  • Yapılandırma: kazanacak bir şey yok

Kişisel veriye iki ad

  • PII: kişisel olarak tanımlanabilir bilgi
  • PHI: korunan sağlık bilgisi

Üç katmanlı satır: gizli, hassas veri ve yapılandırma karşılaştırılıyor. Her satırda iki örnek değer ve bir yabancının bunlarla yapabilecekleri var; senin gibi davranmaktan hiçbir şey kazanamamaya kadar.

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

Bir gizli nasıl sızar: dört yol

Çalışan bir sistemdeki gizli, dört numaralı çıkışa yayılıyor: 1 kod ve geçmişi, 2 ortam değişkenleri, 3 uygulama günlükleri, 4 hata çıktısı ve izler. Dördü de "biri okuyabilir" yazan bir kutuda birleşiyor.

  1. Kaynak kodu ve geçmişi
  2. Ortam değişkenleri
Geliştiriciler için AWS Güvenliğini Kullanma

Bir gizli nasıl sızar: dört yol

Çalışan bir sistemdeki gizli, dört numaralı çıkışa yayılıyor: 1 kod ve geçmişi, 2 ortam değişkenleri, 3 uygulama günlükleri, 4 hata çıktısı ve izler. Dördü de "biri okuyabilir" yazan bir kutuda birleşiyor.

  1. Kaynak kodu ve geçmişi
  2. Ortam değişkenleri
  3. Uygulama günlükleri
  4. Hata çıktısı ve izler
Geliştiriciler için AWS Güvenliğini Kullanma

Dinlenirken şifreli olmak gizli olduğu anlamına gelmez

Güvenli hissettiren seçenek

  • Dinlenirken şifreli, her zaman
  • AWS KMS anahtarı, varsayılan olarak AWS yönetimli

Bir Lambda işlevindeki ortam değişkeni iki yola ayrılıyor. Diskte AWS KMS anahtarıyla dinlenirken şifreli (yeşil). API üzerinden GetFunctionConfiguration çağrısı değeri açık metin döndürür (kırmızı). Not: sadece bir yol korunur.

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

Dinlenirken şifreli olmak gizli olduğu anlamına gelmez

Güvenli hissettiren seçenek

  • Dinlenirken şifreli, her zaman
  • AWS KMS anahtarı, varsayılan olarak AWS yönetimli

GetFunctionConfiguration ne döndürür

  • Değeri, düz metin olarak

Erişim sorusuna depolama cevabı

Bir Lambda işlevindeki ortam değişkeni iki yola ayrılıyor. Diskte AWS KMS anahtarıyla dinlenirken şifreli (yeşil). API üzerinden GetFunctionConfiguration çağrısı değeri açık metin döndürür (kırmızı). Not: sadece bir yol korunur.

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

Hangi depo ve neden

İki servis, her birine bir iş

  • Secrets Manager: gizliler için tasarlandı
  • Parameter Store: yapılandırma için; SecureString parametresi bir KMS anahtarıyla şifrelenir

Bir spektrum diyagramı. Solda Secrets Manager, sağda Systems Manager Parameter Store yazıyor ve arada dört yatay ray var. Her rayda bir numaralı işaret: 1 en solda, 2 ortanın solu, 3 tam ortada, 4 en sağda; dördüncü rayın uçlarında maliyet rakamları ve "döndürme belirleyicidir" notu.

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

Hangi depo ve neden

İki servis, her birine bir iş

  • Secrets Manager: gizliler için tasarlandı
  • Parameter Store: yapılandırma için; SecureString parametresi bir KMS anahtarıyla şifrelenir

Dört şey karar verir

  1. Yönetilen döndürme
  2. Hesaplar arası paylaşım
  3. Sürümleme
  4. Maliyet

Bir spektrum diyagramı. Solda Secrets Manager, sağda Systems Manager Parameter Store yazıyor ve arada dört yatay ray var. Her rayda bir numaralı işaret: 1 en solda, 2 ortanın solu, 3 tam ortada, 4 en sağda; dördüncü rayın uçlarında maliyet rakamları ve "döndürme belirleyicidir" notu.

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

Taze oku, kısa süre önbelleğe al

Çalışan sürecin bir gizli deposunda 1 numarada GetSecretValue çağırdığı, 2 numarada yalnızca bir gizli ARN ve kms:Decrypt ile sınırlandırılmış bir rol kullandığı ve 3 numarada dönen değeri bellekte önbelleğe alıp veritabanı veya iş ortağı API'sini çağırmadan önce tuttuğu gösteriliyor.

  1. Başlangıçta GetSecretValue çağır
  2. Rol, bir gizli ARN + kms:Decrypt ile sınırlandırılmış
Geliştiriciler için AWS Güvenliğini Kullanma

Taze oku, kısa süre önbelleğe al

Çalışan sürecin bir gizli deposunda 1 numarada GetSecretValue çağırdığı, 2 numarada yalnızca bir gizli ARN ve kms:Decrypt ile sınırlandırılmış bir rol kullandığı ve 3 numarada dönen değeri bellekte önbelleğe alıp veritabanı veya iş ortağı API'sini çağırmadan önce tuttuğu gösteriliyor.

  1. Başlangıçta GetSecretValue çağır
  2. Rol, bir gizli ARN + kms:Decrypt ile sınırlandırılmış
  3. Değeri bellekte önbelleğe al

Sonsuza dek önbelleğe alırsan, döndürme seni bozar

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

Döndürme, değeri ayaklarının altından kaydırır

Neden dört adım, tek takas değil

  • Yeni değer, biri kullanmadan önce kanıtlanır
  • Tek takas, tüm istemcileri aynı anda kırar

Sayfa boyunca üç sütun: döndürme adımları, etiket ve önbelleğin. Secrets Manager createSecret, setSecret ve testSecret çalıştırır; kesik çizgi finishSecret'ın etiketi taşıdığı anı gösterir. Üstte etiket AWSCURRENT eski değere eşittir ve önbellek doğrudur; altta etiket AWSCURRENT yeni değere eşittir ve aynı önbellek kırmızı taralıdır. İki çözüm: kısa önbellek ömrü ve kimlik doğrulama hatasında yenileme.

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

Döndürme, değeri ayaklarının altından kaydırır

Neden dört adım, tek takas değil

  • Yeni değer, biri kullanmadan önce kanıtlanır
  • Tek takas, tüm istemcileri aynı anda kırar

Dört adım, tek devir teslim

  • AWSPENDING, AWSCURRENT, AWSPREVIOUS

Sayfa boyunca üç sütun: döndürme adımları, etiket ve önbelleğin. Secrets Manager createSecret, setSecret ve testSecret çalıştırır; kesik çizgi finishSecret'ın etiketi taşıdığı anı gösterir. Üstte etiket AWSCURRENT eski değere eşittir ve önbellek doğrudur; altta etiket AWSCURRENT yeni değere eşittir ve aynı önbellek kırmızı taralıdır. İki çözüm: kısa önbellek ömrü ve kimlik doğrulama hatasında yenileme.

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

Döndürme, değeri ayaklarının altından kaydırır

Neden dört adım, tek takas değil

  • Yeni değer, biri kullanmadan önce kanıtlanır
  • Tek takas, tüm istemcileri aynı anda kırar

Dört adım, tek devir teslim

  • AWSPENDING, AWSCURRENT, AWSPREVIOUS

Önbelleğine bunu söyleyen yok

  • Ömür dakikalar olsun, sonra tekrar oku
  • Kimlik doğrulama hatasında yenile

Sayfa boyunca üç sütun: döndürme adımları, etiket ve önbelleğin. Secrets Manager createSecret, setSecret ve testSecret çalıştırır; kesik çizgi finishSecret'ın etiketi taşıdığı anı gösterir. Üstte etiket AWSCURRENT eski değere eşittir ve önbellek doğrudur; altta etiket AWSCURRENT yeni değere eşittir ve aynı önbellek kırmızı taralıdır. İki çözüm: kısa önbellek ömrü ve kimlik doğrulama hatasında yenileme.

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

Maskle, sansürle, hata ayıklanabilir kal

Kırmızıyla işaretli tek bir ham günlük satırı: bir istek kimliği, tam kart numarası ve bir belirteç. Altında işlendikten sonra aynı üç alan: istek kimliği olduğu gibi, kart son dört haneye maskelenmiş, belirteç sansür işaretiyle değiştirilmiş; "hata ayıklamaya yetecek kadar" notuyla.

Yazmadan önce temizle

  • Mask: şekli koru, değeri gizle
Geliştiriciler için AWS Güvenliğini Kullanma

Maskle, sansürle, hata ayıklanabilir kal

Kırmızıyla işaretli tek bir ham günlük satırı: bir istek kimliği, tam kart numarası ve bir belirteç. Altında işlendikten sonra aynı üç alan: istek kimliği olduğu gibi, kart son dört haneye maskelenmiş, belirteç sansür işaretiyle değiştirilmiş; "hata ayıklamaya yetecek kadar" notuyla.

Yazmadan önce temizle

  • Mask: şekli koru, değeri gizle
  • Redact: değer gitsin, yerinde işaret kalsın
Geliştiriciler için AWS Güvenliğini Kullanma

Maskle, sansürle, hata ayıklanabilir kal

Kırmızıyla işaretli tek bir ham günlük satırı: bir istek kimliği, tam kart numarası ve bir belirteç. Altında işlendikten sonra aynı üç alan: istek kimliği olduğu gibi, kart son dört haneye maskelenmiş, belirteç sansür işaretiyle değiştirilmiş; "hata ayıklamaya yetecek kadar" notuyla.

Yazmadan önce temizle

  • Mask: şekli koru, değeri gizle
  • Redact: değer gitsin, yerinde işaret kalsın

Nöbettekine yapılandırma lazım, yabancıya kalanı değil

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...