0

我已經創建了一個android應用並使用firebase作爲電子郵件註冊和身份驗證的手段。註冊後,用戶可以將清單項目存儲在數據庫中。所以我的問題是我將如何設置Firebase身份驗證規則,以便特定用戶只能訪問他們輸入的數據。現在,每個人都可以在數據庫中讀寫。由於電子郵件認證,我不擔心寫入部分。提前致謝!通過電子郵件進行的Firebase數據庫身份驗證

{ 
    "rules": { 
    ".read": "auth != null", 
    ".write": "auth != null" 
    } 
} 

我的數據的基礎上設置這樣:Database

回答

1

您可以使用built-in variables達到這一點。

的火力地堡的數據庫規則包括內置變量和函數,使您可以參考其他路徑,服務器端的時間戳,認證信息,等等。以下是一個規則示例,該規則將認證用戶的寫入權限授予/ users,其中是通過Firebase認證獲得的用戶的ID。

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

鏈接

https://firebase.google.com/docs/database/security/

+0

我得到了它的基本精神,但我怎麼才能訪問是在數據庫已經是電子郵件。我很抱歉,我是一名android和firebase的初學者。 – somethingelse

+0

/users/04VsBqpZmseOdJCKj4r8BP4MVem2/email也許?這取決於如何構建數據。 –

+0

感謝您的照片。哪裏期待收到電子郵件?在這張照片中,我看不到與電子郵件相關的任何字段。如果你想從Predefined Variables中獲取它,你可以從變量auth.token中獲取它。例如auth.token.email_verified您的規則。 –

相關問題