首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Firebase安全风险评估查询

Firebase安全风险评估查询
EN

Stack Overflow用户
提问于 2017-12-24 21:36:13
回答 2查看 153关注 0票数 0

我有一个项目,其中一个应用程序需要访问跨多个firebase项目的多个数据库。现在,由于它是同一个应用程序,我不能在添加该应用程序的所有项目中使用相同的SHA1。

我没有为任何项目添加任何google-services.json文件,而是从我自己的服务器上获取每个项目的数据库url、存储桶信息、api-key和appids,该服务器跟踪所有分片的firebase项目。

我的问题是,有了这么多信息,任何人都可以通过firebase的身份验证吗?

没有SHA1保护,所以即使使用auth!=null规则,我的数据库也是安全的吗?(因为任何人都可以使用此信息初始化FirebaseApp,并获得一个FirebaseAuth实例并匿名登录)。总而言之,任何人都可以制作自己的应用程序,使用信息并访问/操作我的数据库吗?

如果当前配置不安全,我如何保护我的应用程序

EN

回答 2

Stack Overflow用户

发布于 2017-12-24 22:23:53

是的,这应该是创建连接到数据库的web应用程序的足够信息。

但是,如果数据库规则和身份验证提供程序适合您的情况,这应该不是问题。例如:

  • 如果您不希望匿名用户使用您的应用程序进行身份验证,请在Firebase控制台中禁用该选项。
  • 如果您只想将访问权限授予有限的用户而不启用新注册(或者如果您对身份验证有特殊要求),则使用自定义身份验证提供程序。
  • 如果您要限制对数据库的某些部分的访问(或需要不同的用户角色),请调整您的数据库规则。

我希望这回答了你的问题!

票数 2
EN

Stack Overflow用户

发布于 2017-12-24 22:32:54

经过一些研究和头脑风暴,我得出结论,Oauth域(默认情况下是localhost )和firebase-app域将阻止任何人直接验证我的Firebase应用程序。

即使api-key和其他信息被暴露,只要service-account被隐藏,auth-domain就会保护我的应用程序,因为auth-domain会导致来自非授权域的身份验证失败。也许我甚至想删除生产环境中的localhost :)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47961031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档