识别用户只是安全性的一部分。一旦知道了他们是谁,便需要一种方法来控制他们对数据库中数据的访问。Firebase数据库规则允许您控制每个用户的访问权限。例如,这是一组安全规则,允许任何人读取该路径/foo/,但没有人可以写入该路径:
{ "rules": { "foo": { ".read": true, ".write": false } } }
.read和.write规则级联,因此此规则集授予对/ foo /路径以及任何更深层路径(如)的任何数据的读取访问权限/foo/bar/baz。需要注意的是.read和.write规则,允许访问将覆盖不允许访问数据库中的其他规则; 换句话说,所有适用规则都.read与.write规则进行“或”运算。因此/foo/bar/baz,即使路径中的规则/foo/bar/baz评估为false,在此示例中仍将授予对的读取访问权限。
Firebase数据库规则包括内置变量和函数,可让您引用其他路径,服务器端时间戳,身份验证信息等。这是一个规则的示例,该规则向授予已认证用户的写访问权限/users/<uid>/,其中是通过Firebase身份验证获得的用户ID。
{ "rules": { "users": { "$uid": { ".write": "$uid === auth.uid" } } } }
我导入了Firebase JS v3 API,并使用以下方法初始化Firebase: 但是,应用程序未能通过本地主机上的web浏览器正确加载,导致以下错误:
我试图测试Firebase Cloud messaging APIs,因为控制台没有提供所有功能(特别是当应用程序在后台时定制通知)。但由于某些原因,我无法让它工作,它总是显示401错误。我调查了出现这种情况的原因,并在重新生成新的服务器密钥后进行了尝试,但错误仍然存在。令人惊讶的是,当我生成一个新的服务器密钥时,它没有反映在Firebase控制台中,它将服务器密钥显示为空。此外,我尝试添加我的I
我尝试设置Firebase身份验证,在localhost上它也起作用了。但是当我在Firebase上获得应用程序后,我会得到错误。 我已经在Firebase看过了,域是白名单。 我使用Google登录firebase的代码: 以下是完整的错误消息:
我创建了一个用户注册的系统,一旦他们成功注册,他们在表单中填写的其他信息将被添加到数据库中带有用户ID的节点中。 在createUserWithEmailAndPassword回调中,我添加了一个应该写到数据库的函数。但是,在注册时,数据库写入总是抛出错误。我决定检查firebase.auth().currentUser中的值,以确保新用户确实登录了,而且确实登录了。 安全规则如下: 我还测试了s
我无法在docker容器中使用Python Firebase Admin SDK,特别是在Google Kubernetes引擎(GKE)上。相同的容器在云运行时没有问题。我相信问题在于权限,但我已经被卡住了。任何帮助都将不胜感激! 下面是flask应用程序的概要。这三条路径都在Cloud Run上运行,前两条在GKE上运行,第三条失败。 带容器的回购(需要您自己的firebase项目):http
我想更好地理解隐式授权流和授权代码授权流之间的区别,因为我不确定我目前的理解是否正确。 隐式授权流主要由前端应用程序用于验证用户身份吗? 隐式授权流是否只需要一个client_id、用户名和密码来进行身份验证,换句话说,永远不会发送client_secret? 授权码只是一个短期令牌吗? 将授权码交换为访问令牌后,客户端可以访问用户帐户多长时间?具体地说,如果客户端是一个长时间运行的脚本,那么用户
我添加了Sha-1和Sha-256指纹,还添加了以下依赖项 实现平台('com.google.firebase:firebase bom:26.3.0')实现'com。谷歌。firebase:firebase auth' 并且还在云控制台中启用了Android设备验证API。 使用firebase phone auth时仍会打开浏览器-请帮助