2017-04-02 42 views
6

Bu aptalca bir soru gibi gelebilir, çünkü şifrelerin elbette hash olması ve asla orijinali saklamaması gerekir. Bununla birlikte, API sırları için, genellikle onlar için kayıt olurken açık olarak görüntülendiklerini görüyorum.API Sırları Karmalanmalı mı?

Örneğin, google API konsoluna gidip kimlik bilgileri sayfama bakarsak, istemcimin gizemini twitter için de görüntüleyebilirim.

Kesinlikle api anahtarları parola kadar hassas mı?

Bunun nedeni, yalnızca sağlayıcı tarafında olduğundan, yeterince güçlü bir parola oluşturulduğundan emin olabilirsiniz? Bu durumda, o zaman herhangi bir koruma sağlamaz, veritabanınız tehlikeye girer.

Belki de jeton tabanlı kimlik doğrulaması kullanıyorsanız, sizden kimlik bilgilerinizi istemci kimliği ve sırrı veya yenileme jetonuyla birlikte göndermenizi gerektiren bir şifre hibe türü yapıyor olursunuz. Zaten ele geçirilmiş olmalıydı?

Birkaç olası bu cevaplar tahmin edebilirsiniz

cevap

4

: Bazı durumlarda

  • , (Google ve Twitter kullanılabilirlik gereksinimlerini karşılamak amacıyla düz metin API anahtarının kalıcı depolama alanına sahip olması sunucu için gerekli olabilir örnekler).
  • Bazı durumlarda, yalnızca API anahtarının çok fazla bir şey yapması yeterli değildir - ek olarak kimliği doğrulanmış bir hesaba sahip olması gerekir - ve bu nedenle API anahtarının kendisi sınırlı bir değere sahiptir (dolayısıyla bir paroladan daha az değer) .
  • Bazı durumlarda, API anahtarı bir istemci uygulamasında (özellikle hemen her zaman bunu yapan mobil uygulamalar) kodlanmıştır ve bu nedenle, aynı simge belirtildiğinde sunucu tarafında ekstra koruma eklemek mantıklı değildir. İstemciden önemsiz olarak alınmalıdır.
  • Güvenlik endüstrisi henüz olgunlaşmış değil. Belki de bilgisayar korsanları API anahtarlarını boşaltırken, bunun gibi fikirler daha ciddiye alınabilir.

BTW, Son nokta hakkında çok ciddiyim. Gerçek şu ki, pek çok iyi fikir, onların arkasında kritik bir destek kitlesi bulunana kadar bir gerçeklik haline gelmez. Örnek olarak, ilgili bir konu hakkında blog yazmıştım - protecting user confidential information by hashing it in the database ama meşru kullanıcı oturum açtığında kurtarılabildiği bir şekilde. Bir örnek olarak Ashley Madison'ı kullandım - bu durumda bilgisayar korsanları e-posta adreslerinden sonra daha fazlaydı. , telefon numaraları ve şifrelerden fiziksel adresler. Böylece, bilgisayar korsanları veritabanını yakaladıklarında hemen istedikleri şeye sahiplerdi ve bcrypt şifreli şifreler hakkında daha az umursamıyorlardı (aslında, bazı eski şifreler sadece MD5 ile kodlandı!) Ne yazık ki, bu gibi kavramlar yeterli değildir. Onları gerçek yapmak için itin. Sıfır bilgi ağı tasarımları bile gerçek dünyada çok azdır.

+0

Teşekkürler. Benim için, bir müşteri sırrı hassas bir bilgi parçasıdır, bu yüzden her zaman bunu karıştırmayı tercih edeceğim. Şu an bunu okuduğumu okudum AWS bunu şimdi (Ya da yakında olacak), bu yüzden muhtemelen iyi bir fikir olduğunu düşünen tek kişi ben değilim :) Dediğin gibi, Google ve Twitter'ın olmadığını Kullanılabilirlik nedenlerinden ötürü ve kullanıcı tabanını göz önünde bulundurarak bir ölçüde anlaşılabilir (Ama büyüklükte olsa bile tercih etmemeyi tercih ederim). Mobil istemci hakkında iyi bir nokta, javascript apis için de aynısının olduğunu varsayalım (Müşterinin gizli sırrı bu yüzden kontrolünü kaybettiniz). – Steviebob

İlgili konular