firebase - 是否可以限制用户可用于登录 Firebase 应用的设备数量?

标签 firebase vue.js cordova firebase-authentication

上下文: 我正在使用 Vue 帮助更新一个 Cordova 应用程序,以从基于订阅的收入(用户必须付费才能访问该应用程序)转变为基于广告的收入(用户可以免费注册但将拥有在他们使用应用程序时显示在应用程序中的广告。我们想要做的部分事情是限制用户可以拥有帐户的设备数量,以避免有人决定与他们的一千个 friend 共享他们的付费帐户。我想效仿 Netflix 使用他们的帐户所做的事情。

Netflix too many accounts screen

这是我想到的使用电子邮件/密码身份验证 ( https://firebase.google.com/docs/reference/js/firebase.auth.Auth#signinwithemailandpassword ) 的工作流程

// I would like to have device information at this point in the application
firebase.auth().signInWithEmailAndPassword(email, password)
    .then(function(result) {
        // Use Realtime Database to associate the device with the user
    })
    .catch(function(error) {
        // I'd like to catch the "too-many-devices" error here, but if needed, I can use the success handler to check device limits
    })

不幸的是,文档中列出的错误代码没有提到“设备太多”类型的错误,这意味着 Firebase 身份验证很可能没有我正在寻找的内置功能。

根据此支持文档 (https://support.google.com/firebase/answer/6318039?hl=en),听起来 Firebase Analytics 已经可以通过某种方式识别设备。如果可能的话,我想访问它。我所做的其他搜索似乎总是将我指向身份验证限制 ( https://firebase.google.com/docs/auth/limits ),它没有提及任何关于独特设备的信息。

是否可以限制用户可用于登录 Firebase 应用的设备数量?

最佳答案

Firebase Auth 不提供任何机制来跟踪或限制用户使用的设备数量。事实上,它真正做的就是公开可以在 Internet 上的任何地方使用的公共(public) API。完全没有“器”的感觉。

如果您想限制用户可以使用的设备数量,您必须自己以某种方式实现。由于 Firebase 基本上允许来自任何来源的无限制登录,因此您将无法严格执行此操作。有人将能够找到一种方法来解决您实现的任何问题。但您当然可以在您的应用中执行大量检查,以确保跟踪和限制不同的设备,并假设最终用户不会尝试绕过您的限制。

关于firebase - 是否可以限制用户可用于登录 Firebase 应用的设备数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66497681/

相关文章:

google-chrome-extension - Chrome 扩展程序背景页面中的 Firebase 身份验证

firebase - AngularFIRE 属性 'subscribe' 在类型 'AngularFireList<{}>' 上不存在

ios - Firebase 身份验证自定义 token iOS

database - 如何在 NoSQL 环境中创建以下数据结构

vue.js - Vue3 - 组合函数与从 'module' 导入 { functionObject }

javascript - 如何从 javascript (GPS) 显示 jQuery 移动对话框

android - PhoneGap 联系人选择器

javascript - 如何在组件vue js的数据中引用同一组件的方法

javascript - 如何在 Vue.js 类绑定(bind)上检查当前元素的属性?

ios - Cordova 插件在 Xcode 和 Cordova 更新 (OSX) 后无法工作