c# - 如何在 Xamarin Forms 中使用经过身份验证的用户访问受 Firebase 保护的实时数据库
问题描述
我正在使用带有电子邮件的 Firebase Sign 并获取 authToken 和 Firebase UID 能够访问公共数据库,但我想使用经过身份验证的用户访问受保护的数据库。Firebase 实时数据库规则
{
"rules": {
".read": "auth != null",
".write": "auth != null"
}
}
解决方案
如果您想限制对经过身份验证的用户的读取访问权限,您可以在规则中利用这一点,例如auth != null
. 您提供的规则可能会限制授权用户可以写入和读取数据。
但是,我们通常建议进一步限制写入访问。
例如,您的应用可能希望确保用户只能读取和写入自己的数据。在这种情况下,您需要 auth.uid 变量和请求数据的用户 ID 之间的匹配:
{
"rules": {
"users": {
"$userId": {
".write": "$userId=== auth.uid",
".read": "$userId=== auth.uid"
}
}
}
}
推荐阅读
- spring-boot - 如何模拟我在使用 Mockito 的方法中使用过的 restTemplate.Exchange
- c# - 为用户设置转发电子邮件地址
- youtube-api - 使用 youtube api 到 youtube 直播的网络摄像头
- azure - 升级到 Azure DevOps Server 2019 和发布管道失败并出现 VssServiceResponseException Page Not Found 错误
- asp.net-core - 如何使用相同 HTTP 动词(和查询参数)的多个控制器方法配置模型绑定?
- performance - clojure - :refer vs :as
- google-apps-script - 在 Google 表格中找不到方法 getRange(int,int)
- web-scraping - Apify 中请求之间的延迟
- python - 无法通过双击打开 Python 3.x 图形
- java - 如何使用自定义命令制作命令行界面?