1

に基づいて設定したセキュリティルール私はこのように、それは認証に基づくセキュリティルールがどのように安全な理解したいと思います:クラウドFirestore:認証

service cloud.firestore { 
    match /databases/{database}/documents { 
    match /{document=**} { 
     allow read, write: if request.auth != null; 
    } 
    } 
} 

私は、各文書は、特定のユーザーからの相対でのコレクションを持っています。

私はAndroidとiOSの両方で、Webからではなく、モバイルからのみCloud Firestoreを使用しています。

ユーザーが自分のモバイルアプリ以外で認証され、他のユーザーのドキュメントを読み書きする方法はありますか?

答えて

5

ユーザーが互いに情報を読み取ることができないようにするには、auth != nullよりも強力なルールを実装する必要があります。

たとえば、userIdと認証されている場合、これらのルールではデータの読み取りと書き込みができるのは/users/userIdです。誰かが「私の携帯アプリの外に認証され、ひいては読み取りまたはいくつかの他のユーザーのドキュメントを書くために軌道に乗る」あなたが述べたようにするために

service cloud.firestore { 
    match /databases/{database}/documents { 
    match /users/{userId} { 
     // Anybody can write to their ouser doc 
     allow read, write: if request.auth.uid == userId; 
    } 
} 

これは不可能になります。

関連する問題