有没有一种方法可以让我以Firebase管理员的身份进行身份验证,以获得对firebase的完全读/写访问权限(已经有保护部分firebase的安全规则),或者我是否必须编写一个安全规则,以某种方式允许我访问完整的firebase,例如,通过提供特定的密码/密钥。
有没有一种标准的或建议的方法来做这件事?
发布于 2017-03-29 07:43:53
See this for the 'latest' documentation.
authWithCustomToken现在是signInWithCustomToken (firebase版本3.x)
文档中的示例:
firebase.auth().signInWithCustomToken(token).catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
if (errorCode === 'auth/invalid-custom-token') {
alert('The token you provided is not valid.');
} else {
console.error(error);
}
});
发布于 2014-04-07 23:24:25
只有在客户端代码之外进行身份验证时,Andrew的回答才有效(否则,您显然不应该使用MY_SECRET
)。由于许多人,像我一样,使用Firebase来避免服务器代码,这里有一个替代的答案。
在大多数firebase应用程序中,除了简单的登录"auth“对象(它只存储电子邮件和密码)之外,可能还有一个"Users”对象。您可以向“$user”对象中的每个用户添加一个"isAdmin“或"isModerator”(或您想要的任何内容)。
然后,您的规则将如下所示(假设您的auth.id与您的$user密钥匹配):
{
"rules": {
"someObject": {
".write": "root.child('Users').child(auth.uid).child('isAdmin').val() == true"
}
}
}
发布于 2013-07-12 05:52:15
是的有。您只需使用Firebase Secret而不是身份验证令牌进行身份验证。即。
firebaseRef.auth(MY_SECRET);
您可以在Forge的身份验证部分找到Secret。
https://stackoverflow.com/questions/17607101
复制相似问题