2016-11-12 68 views
2

我將圖像保存到我的Firebase存儲,並且我只希望使用該應用程序的用戶能夠訪問它們。我不想強迫我的用戶只是爲了使用應用程序而登錄,所以這不是一個選項。如何使應用程序的用戶只能使用Firebase存儲

+0

你必須爲所有用戶創建和硬編碼到您的項目只有一個用戶名和密碼。 –

回答

5

由於火力地堡後端服務在雲中託管,他們本質上是任何人都可以訪問的。沒有辦法限制他們只訪問使用您編寫的代碼的人。任何開發人員都可以下載SDK,重新編寫代碼並使用它來訪問相同的後端服務。

這就是爲什麼您通過基於用戶的安全性來安全訪問Firebase數據(無論數據庫中的結構化數據還是存儲中的文件)的原因。讓用戶登錄到應用程序,意味着您可以識別誰正在訪問數據。驗證用戶身份後,您可以使用Firebase的安全規則(對於databasestorage),以確保他們只能訪問授權的數據。他們可能仍在使用其他代碼,但您至少知道他們是誰,並確信他們只能以您授權的方式訪問數據。

通過使用anonymous authentication,您可以兩全其美(要求用戶進行身份驗證,無需登錄)。請記住,任何開發者都可以下載Firebase SDK並匿名驗證用戶身份。

有關的話題舊的討論(數據庫,但它同樣適用於存儲),請參閱How to prevent other access to my firebase

2

基本上你想改變你的存儲規則。在Firebase控制檯和存儲空間下方,框架頂部有兩個標籤。一個說文件,一個說規則。如果單擊「規則」選項卡,您將看到定義誰可以讀取和寫入存儲的代碼視圖。您需要按照以下鏈接爲您的存儲設置正確的規則。但基於你希望所有你需要做的就是設置讀取寫入的代碼是什麼:

allow read: if request.auth != null; 

退房此鏈接:https://firebase.google.com/docs/storage/security/user-security

相關問題