Güncelleme (20160611): Eğer https://firebase.google.com üzerinde proje oluşturdu, adımlar bir sunucudan veritabanına erişim farklıdır. Bu yanıtı bakın: Is it still possible to do server side verification of tokens in Firebase 3?
Bunu yapabileceğiniz iki yol vardır: Bir sunucu kimlik doğrulama belirteci oluşturun veya bir Firebase sırrı kullanın.
Size sunucudan kullanabilirsiniz belirteçleri oluşturmak için Özel Giriş için oluşturulan aynı token generator libraries kullanabilirsiniz belirteç bir sunucu oluşturun. Ardından bu sunucuya güvenlik kurallarınızdan özel erişim sağlayabilirsiniz.
- sunucunuzun dil/platformu için token generator library alın:
İşte adımlardır. Node.js ve Java sunucuları en iyi şekilde çalışır.
Önceden seçilmiş bir uid ile bir belirteç oluşturun. Bir node.js sunucu yazıyorsanız, kodu şöyle görünebilir:
var FirebaseTokenGenerator = require("firebase-token-generator");
var tokenGenerator = new FirebaseTokenGenerator("<your-firebase-secret>");
var token = tokenGenerator.createToken(
{uid: "my-awesome-server"},
{ expires: <far_into_the_future_seconds> });
müşterini kimliğini doğrulamak için belirteci kullanın. örneğin sunucunuzun dil için hiçbir istemci varsa
var ref = new Firebase("https://<your-firebase>.firebaseio.com/");
ref.authWithCustomToken(token, function(error, authData) {
...
});
: Burada daha node.js kod PHP, REST isteğiniz için jetonu auth
parameter olarak kullanın.
Güncelleme bütün Firebase
{
"rules": {
".write": false,
".read": "auth.uid === 'my-awesome-server'"
}
}
Erişim tüm verileri okuma erişimi sağlayan bu basit kuralı gibi kullanıcı kimliği tanımlandığı şekliyle, özel izinler sunucu vermek için güvenlik kuralları
, müthiş şeyler yapmak .
Avantajları
- Bu sunucu kimlik doğrulaması için Firebase resmen önerilen yoldur.
- Sunucunuz doğrulama kurallarına saygı gösterecektir.
- Sunucu başka bir kullanıcıdır. Verilerinize ince taneli erişim sağlamak için güvenlik kurallarını kullanabilirsiniz.
- Erişim iyi taneli olduğundan, sunucunuzda bir hata, kök düğümünüzü silmek gibi bir hasara neden olacaktır.
Firebase gizli
Bir şapka açılır kenarında yaşayan hoşlanır geliştirici ve türleri sudo
tür iseniz, aynı zamanda doğrudan Firebase sırrı kullanarak kimlik doğrulaması yapabilir.
Fakat cidden, bunu yapma. Tehlikeli.
Nedenleri o
- Hemen körlemesine
sudo
kullanmak gibi yapmak değil, bu son derece tehlikeli.
- sunucunuz doğrulama kurallarınıza uymayacaktır.
- Sunucunuz tam dolu /Firebase'inize yazma erişimi. Eğer yeterince çirkin bir hata varsa, iş erişimi olmayan verileri silebilir veya bozabilir.
- gizliliğiniz daha fazla yerde (potansiyel olarak giden istek günlüklerinde, vb.) Sona erer. Dışarı çıkarsa daha fazla riske maruz kalırsınız.
Bu cevap yeterince upvotes –
yok Bu iyi bir kopyasıdır: https://www.firebase.com/docs/web/guide/login/custom.html ama aslında bazı değerli noktalarda genişletmek yok. – arcseldon
Burada başka bir yararlı bağlantı: https://www.firebase.com/docs/security/quickstart.html – arcseldon