我是新來的火力地堡,真正與安全規則掙扎。火力地堡安全規則
我想存儲的數據只能由該用戶進行訪問,但匿名用戶會話,只要我收緊的安全規則,我得到拒絕的權限,並不能明白爲什麼。
我的結構是:
/userSessions/$ USER/USER_ID
的應用推送至用戶會話,並寫入由匿名登錄返回的USER_ID。
我有以下安全規則:
{
"rules": {
".read": true,
"userSessions": {
"$user": {
".write": "newData.child('user_id').val() == auth.id",
"user_id": {
".validate": "newData.isString()"
}
}
}
}
}
我知道我在做一些愚蠢的,但不知道如何使用安全模擬器或者所以不知道怎麼走有關解決這個
任何幫助,不勝感激
編輯 - 努力創造匿名認證後下userSessions一個新的條目時,會發生 問題。
代碼:
var userSessionsRef = new Firebase('https://xxxxxx.firebaseio.com/userSessions');
var userSession;
var auth = new FirebaseSimpleLogin(userSessionsRef, function(error,user) {
if (error) {
console.log(error);
} else if (user) {
userSessionsRef.child(user.id).set({
user_id: user.id,
provider: user.provider,
created: Firebase.ServerValue.TIMESTAMP
});
userSession = new Firebase('https://xxxxx.firebaseio.com/userSessions/'+user.id);
userSession.onDisconnect().remove();
}
當您獲取權限被拒絕時,您想做什麼? –
下創建userSessions一個新的$用戶 - 我會更新的問題 –
嗨@JonReeves!當你在模擬器中試用時,你會得到什麼?另外,它似乎很可能是user.id是一個數字(我假設你使用Twitter或Facebook?他們都返回數字ID)。另外,哪些數據正在設置?你可以登錄用戶對象,並在這裏發佈?您可以爲我們提供更多的數據,使您能夠輕鬆快速地進行故障排除。 – Kato