【问题标题】:firebase anonymous auth with cloud functions具有云功能的firebase匿名身份验证
【发布时间】:2021-08-19 04:18:53
【问题描述】:

我正在尝试使用 firebase 匿名身份验证 + firebase 云功能。这个想法是我有一段代码应该在谷歌云中运行。

firebase.auth().signInAnonymously()
  .then(() => {
    // Here I call firebase cloud function
  })
  .catch((error) => {
    var errorCode = error.code;
    var errorMessage = error.message;
    // ...
  });

现在,一切都很好,但实际问题是恶意用户可以以同样的方式调用我的谷歌云功能,他将能够执行它,这对我来说太糟糕了。基本上,谷歌云功能应该只能在我的网站上执行,不能由其他任何人执行。有人建议我使用firebase,否则我所做的只是在前端代码中调用该函数。

firebase 是否提供此问题的解决方法/解决方案?注意:我无法真正将用户与我的界面区分开来,因为无论我如何区分,恶意用户都可以获取这些信息。

我做这一切的原因是有一段代码只有我的前端必须执行,我不想仅仅为此实现我的后端服务。

【问题讨论】:

    标签: firebase google-cloud-platform firebase-authentication google-cloud-functions


    【解决方案1】:

    Firebase App Check 听起来是满足您需求的完美解决方案。它只允许从您允许的应用和网页访问您的 Firebase 项目。

    【讨论】:

    • 非常感谢您的建议。不过,我可能会问,谷歌怎么知道云功能不是从我的应用程序调用的,而是从另一个应用程序调用的?因为恶意用户可以更改任何内容 - 甚至是来源。
    • 我的意思是,我打算从前端使用它,所以无论我如何初始化 firebase 并激活 firebase 应用程序检查,黑客都会这样做
    • 如果不能访问您的 Firebase 项目,他就无法做到这一点。我的意思是访问您的 Firebase 项目控制台。
    • 相当不错的东西......我猜谷歌对此有很多检查,因为例如,如果它只检查来源,那么来源欺骗是可能的
    • 我在上一条评论中所说的话是否正确?我的意思是他仍然可以复制/粘贴初始化代码+调用云函数代码...由于可以进行源欺骗,我认为使用firebase也可以利用..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-08
    • 2017-06-03
    • 1970-01-01
    • 2016-12-22
    • 1970-01-01
    • 2020-10-25
    • 1970-01-01
    相关资源
    最近更新 更多