我对编码比较新,遇到了麻烦.
我有这个代码将数据发送到firebase
app.userid = app.user.uid
var userRef = app.dataInfo.child(app.users);
var useridRef = userRef.child(app.userid);
useridRef.set({
locations: "",
theme: "",
colorScheme: "",
food: ""
});
Run Code Online (Sandbox Code Playgroud)
但是,我一直收到错误:
FIREBASE警告:设置为/ users /(GoogleID)失败:permission_denied 2016-05-23 22:52:42.707 firebase.js:227未捕获(承诺)错误:PERMISSION_DENIED:权限被拒绝(...)
当我试着查看它时,它会讨论Firebase的规则,它似乎是一种我还没有学过的语言(或者它只是在我脑海中).有人可以解释导致问题的原因吗?我以为是我要求它存储电子邮件和用户显示名称而你只是不允许这样做,但当我把它拿出来时我仍然遇到同样的问题.有没有办法在没有设定规则的情况下避免这种错误,或者规则是我可以教自己如何在一天内写作,或者我是否只是走出了我的联盟?
谢谢你的帮助!
javascript firebase firebase-security firebase-realtime-database
使用新的firebase云功能,我决定将我的一些HTTP端点移动到firebase.一切都很好......但我有以下问题.我有两个端点由HTTP触发器(云功能)构建
虽然第一个端点很好,但对于我的第二个端点,我希望仅为经过身份验证的用户保护它.意思是拥有我之前生成的令牌的人.
我该如何解决这个问题?
我知道我们可以使用云函数获取Header参数
request.get('x-myheader')
Run Code Online (Sandbox Code Playgroud)
但有没有办法保护端点就像保护实时数据库一样?
firebase firebase-security firebase-authentication firebase-realtime-database google-cloud-functions
我希望用户能够使用多个不同的身份验证提供程序(例如Facebook,Twitter或Github)对我的Firebase应用程序进行身份验证.经过身份验证后,我希望用户无论使用哪种身份验证方法都可以访问同一帐户.
换句话说,我想将多个身份验证方法合并到我的应用程序中的单个帐户中.如何在Firebase应用中执行此操作?
authentication facebook-authentication firebase firebase-security
如何阻止其他用户通过Firebase网址访问我的Firebase数据库?我该怎么做才能将其保护到我的域名?
有没有一种方法,我可以用火力地堡认证为完全读一个火力点的管理员/写访问它(已经有保护它的部分安全规则),或将我必须写一个安全规则,不知怎的让我进入完整的firebase,例如通过提供某个密码/密钥.
是否有标准或建议的方式这样做?
这是我第一次涉足Firebase和nosql,我来自SQL背景.
使用简单登录安全性电子邮件/密码,如何限制对Firebase中数据的访问?例如,某些用户将有权创建业务对象(用户,客户,类别等),而其他用户则不会.有没有办法将权限列表附加到"auth"变量?
问题说明了一切.在Firebase中,如何在用户创建帐户时确认电子邮件,或者就此而言,通过电子邮件重置密码.
我可以更广泛地问:有没有办法从Firebase发送电子邮件?例如通知等.这不是你通常会在客户端做的事情.
Firebase简单登录提供电子邮件/密码选项,我该如何使用它?从创建用户,存储该用户的数据到登录和注销.
在较旧版本的Firebase中,我们可以在文件中添加一个rules部分firebase.json,并在每次部署时上传新的安全规则.
我们如何使用firebase-toolsv3命令行工具部署数据库安全规则?
此页面表明可能:"Firebase存储规则"
此页面提示命令行工具可以执行此操作,但似乎firebase --help并firebase deploy --help没有暗示如何执行此操作?(道歉,如果我错过了......)
(相关:可以进入的所有内容的规范文档在哪里firebase.json?我在旧的Firebase网站上找到它,但无法通过搜索新文档找到它.)
谢谢!
firebase firebase-security firebase-tools firebase-realtime-database
Parse将在今年年底关闭,所以我决定开始使用Firebase.我需要实现一个包含3个字段的注册过程:电子邮件,用户名,密码(电子邮件和用户名对我的应用必须是唯一的).
由于Firebase没有提供像Parse那样管理用户名的简便方法,因此我决定只使用电子邮件/密码注册并保存一些其他数据,如用户名.这是我的用户数据结构:
app : {
users: {
"some-user-uid": {
email: "test@test.com"
username: "myname"
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是,我想要做的是使用户名唯一,并在创建帐户之前检查它.这些是我的规则:
{
"rules": {
".read": true,
".write": true,
"users": {
"$uid": {
".write": "auth !== null && auth.uid === $uid",
".read": "auth !== null && auth.provider === 'password'",
"username": {".validate": "!root.child('users').child(newData.child('username').val()).exists()"}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
非常感谢您的帮助