当前位置: 首页 > 知识库问答 >
问题:

如何在没有身份验证的情况下向Firestore添加安全规则?

宰父衡
2023-03-14

我正在做一个项目,我正在使用一个gsm模块称为SIM800的设备。SIM800能够获取和发布请求。但是Firebase SDK不能安装在设备上,所以我不能做认证。该设备将访问Firestore数据库,获取和发送请求,读写数据。由于模块不能进行身份验证,我是否可以使用我在reuesting时生成的令牌?

如果这是可能的,我应该如何编写firestore安全规则?

共有1个答案

古文康
2023-03-14

不支持传递任何类型的每请求令牌以与安全规则一起使用。这实际上并不安全,因为有人可以简单地分解设备并提取令牌。

在没有Firebase Auth情况下,您所能做的最好的事情就是要求,对于新文档创建,新文档中有一个字段,该字段包含客户端代码和安全规则之间商定的共享“密码”。但同样,这并不是真的那么安全。

您还可以考虑找到一种方法,将预先经过身份验证的自定义Firebase Auth令牌传输到设备,并使用REST API传递该令牌,以便对访问进行身份验证。

 类似资料:
  • “laravel/框架”:“5.7.*” “tymon/jwt认证”:“开发人员开发” 我正在尝试创建一个添加了自定义声明的JWT令牌,而不使用auth(这意味着我不希望从凭据创建令牌)。这是为了创建不需要登录的令牌,例如忘记/重置密码等。 使用Tymon/JWTAuth(https://github.com/tymondesigns/jwt-auth)由于最新的Laravel存在问题,因此建议加

  • 我有一个angular web应用程序,我没有使用Firebase身份验证来登录我的用户,因为它是通过服务完成的。 现在,我的firestore帐户有完全的访问权限,任何人都可以执行任何操作。 我阅读了安全规则的文档,到处都提到了firebase Auth。有没有一种方法来定义规则,而不使用firebase Auth?

  • 问题:我的java springboot应用程序从外部系统接收JWT令牌,以便用外部身份管理提供程序对用户进行身份验证,该提供程序在成功时返回用户详细信息。一旦接收到userdetails,后端应用程序必须为外部系统最终用户创建一个重定向url。重定向url将使用户登陆到我的angular应用程序上,以显示登陆页面。在这里,应该允许所有rest API通过http会话。如果用户试图直接访问rest

  • 我想添加只允许经过身份验证的用户在Jitsi会议中创建会议的功能。我看到了外部API的jwt参数、config.tokenAuthUrl和lib-jitsi-met令牌文档,但我对如何将它们放在一起感到非常困惑。 现在,我的工作流程如下: 用户通过自定义应用程序登录谷歌。 用户被重定向到一个新的Jitsi会议,使用从Google登录信息派生的jwt参数。 我遇到的问题是验证这个令牌,以及如何设置它

  • > 如何在没有用户身份验证的情况下从Instagram获取用户的媒体? 现在是否还有不使用访问令牌获取instagram提要的方法(06/2016)? 我可以通过抓取用户的网页来检索前二十个项目,但这不是一个好的或标准的方法,尤其是当Instagram不正式支持它的时候。

  • 我的项目有Spring Security。主要问题:无法访问http://localhost:8080/api/v2/api-docs的swagger URL。它表示缺少授权头或授权头无效。 浏览器窗口的屏幕截图My pom.xml有以下条目 WebSecurityConfig: