2016-08-21 3 views
0

私はGoogleのFirebaseデータベースセキュリティの規則のドキュメントを読んでいると私は私のルールファイルで、この次のルールを実装:これらのFirebaseデータベースのルールで `/ users`に書き込むことができますか?

{ 
    "rules": { 
    "users": { 
     "$user": { 
     ".read": "auth.uid === $user", 
     ".write": "auth.uid === $user" 
     } 
    } 
    } 
} 

問題は、私が読んでですべてを書くことができることを見たシミュレータでテストユーザー、ルールがないようです。
Firebaseデータベースの問題ですか?どうすれば解決できますか?あなたのスクリーンショットのhttps://firebase.google.com/docs/reference/security/database/#variables

+0

シミュレータではどのような認証を使用しましたか?これらすべてのセキュリティルールはありますか? –

+0

これらのルールでは、 '/ users'に書き込むべきではありません。 Andreが要求したように、より多くの情報と後続の(シミュレートされた)書き込みを示すシミュレータのスクリーンショットを共有できますか? –

+0

私は質問を編集し、私のテスト@AndréKoolの画面を追加しました – ale00

答えて

2

ルールはあなたが前に掲示するものとは異なります。 ここFirebase database test

は、ドキュメントのリンクです:

は、ここに私のテストです。

Firebaseデータベースセキュリティモデルでは、権限がカスケードされます。ユーザにノードに対する読み取りまたは書き込み権限を与えると、その権限を下位レベルで使用できなくなります。 documentation on security rules for more informationを参照してください。

あなたはトップレベル".write": "auth !== null"を削除した場合、あなたは、もはや/usersに書き込むことはできません、あなたはユーザーuid123している場合にのみ/users/uid123に書き込むことができることがわかります。

関連する問題