问题标签 [firebase-authentication]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
633 浏览

android - 如何在 Facebook App revoke 上清除 Firebase authdata?

我正在从这里关注我的应用程序的 Facebook 示例登录。

我有一个关于 facebook 上提到的登录测试用例的问题。这是场景:

  1. 用户第一次来,看到登录 facebook 按钮
  2. 成功登录,查看并批准 facebook(fb) 应用程序权限屏幕,我得到 authdata 和其他一些信息
  3. 用户关闭应用
  4. 用户直接进入 Facebook 并撤销对第 2 步中批准的 fb 应用程序的访问权限。
  5. 用户打开移动应用程序,仍然可以使用它,而没有获得 facebook 登录按钮..?

理想情况下,我希望再次看到登录按钮。我们如何使用 Firebase 和 Facebook 一起处理这种情况?我是否需要在每次应用重新启动时检查某些内容以及在新登录开始之前我需要清除的所有内容?

0 投票
1 回答
3286 浏览

ios - 需要 Firebase 重新身份验证

我们正在开发一个 iOS 应用程序,该应用程序使用 Google 向 Firebase 进行身份验证。根据https://www.firebase.com/docs/ios/guide/user-auth.html#section-login Firebase 表示身份验证令牌每 24 小时到期一次。我们想知道是否需要考虑以下情况:

  1. 用户通过 Google 和 Firebase 进行身份验证
  2. 我们的应用获得了一个在 24 小时内过期的 Firebase 身份验证令牌
  3. 用户关闭我们的 iOS 应用
  4. Firebase 身份验证令牌到期前 1 分钟,用户重新打开应用
  5. 一分钟后,我们向 Firebase 发出请求。身份验证令牌已过期。

看来我们必须通过观察每个https://www.firebase.com/docs/ios/guide/user-auth.html#section-monitoring-authentication的身份验证更改来使用 Firebase 重新进行身份验证。但是我们是否必须从上面的 #5 重新向 Firebase 发出相同的请求?此外,我们似乎可以在 cancelBlock 中重新进行身份验证:

这并不理想,因为我们必须在我们提出请求的任何地方编写此代码。

处理这种情况的最佳实践是什么?Firebase 是否会在接近到期时自动刷新身份验证令牌?

0 投票
2 回答
1878 浏览

node.js - 使用 Firebase 和 Node.JS 注销

我想为需要注销且未在前端启用 JavaScript 的用户提供 Node.JS Express 路由包装器。DB是我对我的 Firebase 的引用:

当我尝试以这种方式注销已登录时,我收到以下错误:

错误:发送后无法设置标头。

Firebase.unauth()的文档非常简单,但是在路由中调用它(带有或不带有res.redirect)会导致错误。有人对此问题有建议或解决方法吗?

0 投票
1 回答
145 浏览

firebase - 使用 Angular.js 和 $.authwithPassword() 对 Firebase 进行身份验证

我正在尝试以下代码。单击“登录”时,我可以通过电子邮件/密码对用户进行身份验证,并返回一个对象;但我不明白我缺少什么来返回我试图从“items”和“alseCards”获取的数据。如果我将读写设置为“true”,它们会返回数据正常,只是想通过任何登录的用户对那些用户进行身份验证。我觉得这是安全/规则设置,但只是开始使用 Firebase 并苦苦挣扎。

索引.html

安全和规则.json

提前谢谢。

0 投票
1 回答
49 浏览

angularjs - Firebase createAuth 凭据不适用于 ng-model 范围变量

我第一次在 Ionic 项目中使用 AngularFire。我按照firebase网站上的文档中的示例使用电子邮件和密码进行身份验证。由于某种原因,我来自ng-model的$scope值没有正确绑定。

如果我用$scope.email硬编码的电子邮件和密码替换 $scope.password ,它就可以工作。这是包含电子邮件和密码模型数据的模板。

我的 $scope 值设置错误还是我缺少关于 createAuth 方法的某些内容?

0 投票
1 回答
1607 浏览

firebase - 嵌套数据结构的 Firebase 安全规则

我正在使用 Firebase 规则配置来控制对我的数据库的读/写访问。我最初编写了更多规则,但在故障排除过程中我已经减少了一些内容。这是我当前的规则配置:

我想要做的是允许 Firebase 的用户创建一个$dev节点、$proj节点和共享节点,只要它们不存在并且用户已经过身份验证。然后,我想允许用户在共享节点内拥有自由写入访问权限,只要他们的身份验证令牌的 devBucket 与$dev他们正在写入的节点匹配,并且他们的身份验证令牌的 projBucket 与$proj他们正在写入的节点匹配。我正在使用适用于 Android 的 Firebase 自定义身份验证系统,并且我已经使用这些 devBucket 和 projBucket 变量加载了我的令牌。身份验证肯定是根据我的logcat,但我目前的规则肯定会出现权限被拒绝错误。几天来,我一直在这里讨论 Firebase 规则文档和问题,但我仍然对他们的规则系统如何工作的细微差别感到困惑。

根据文档规则执行到 JSON 中较低级别的嵌套,我只是无法理解如何编写允许节点及其子节点创建一次,但也允许任意数量的子节点的规则如果您经过适当的身份验证,则在共享下写入或覆盖。

有谁知道我如何编写规则来完成我想要做的事情?

编辑:我认为还值得一提的是,当我尝试将侦听器也指向我的节点时,我得到了权限被拒绝的错误。

0 投票
1 回答
110 浏览

polymer - 是个Polymer 1.0 中可用的元素?

<firebase-login>Polymer 1.0 中是否提供该元素?

此处的文档<firebase-element>未提及该<firebase-login>元素。但是它确实提到了<firebase-auth>.

另一方面,我的Polymer Starter Kit (PSK) 提供了该<firebase-login>元素。

哪个是正确使用的元素?我需要更新我的 PSK 吗?

这里发生了什么?

0 投票
2 回答
3705 浏览

authentication - 我需要一个工作示例演示或 Polymer 1.x 中的 Polymerfire 元素

请分享如何使用<firebase-auth>Polymer 元素的工作代码示例。

我有一个自定义<paper-button>,我试图将其设置为用于用户身份验证的登录按钮。我想使用 Firebase 来执行用户身份验证服务。

这是用户文档

这是 Github 存储库

0 投票
0 回答
109 浏览

firebase - Firebase 简单登录 - 当用户删除他的帐户时,我可以观看事件吗?

在我的应用程序中,任何用户(通过 Firebase 简单登录注册)一次可以拥有 3 种可能状态中的 1 种,即activedeleted中的一种suspended。我保持这样:

任何涉及任何用户的活动都将检查他/她的状态,如果是,deleted或者suspended该操作无法完成。

通常当用户选择从我的应用程序中删除他的帐户时,它会是这样的:

问题是用户可以删除他/她的帐户而无需status先更新deleted。例如,这可以由用户在自己的浏览器控制台或 Node.js 上完成:

这样,用户将不会在 Firebase 上拥有他的帐户,但status 我在上面保留的该用户的帐户将保留active,因此我的应用程序将允许该用户的任何活动(例如有人向他发送礼物,如果他statusdeleted正确更新。)这可能是一个问题。当用户删除他/她的帐户时,status如何更新?deleted

我想到的解决方案是定期运行cron作业检查Firebase中的所有用户,尝试使用随机密码注册没有状态deleted的用户并检查是否收到EMAIL_TAKEN错误。如果可以注册,则意味着用户已经删除了他/她的帐户,但statusFirebase 中的帐户尚未更新为deleted. 在这种情况下,它必须将状态更新为某些东西(例如suspiciousdeleted)并再次删除这个新注册的帐户。我认为这可能是这样实现的:

我认为这可能不是一个好的解决方案,因为系统必须为每个用户(没有deleted状态)运行,例如每晚。这个问题有更好的解决方案吗?

0 投票
1 回答
1592 浏览

rest - Nest:使用 curl 获取设备时获取 HTTP/1.1 401 Unauthorized

如果我想使用获取 Nest 设备,我会收到 HTTP/1.1 401 Unauthorized

我的 Nest 帐户中没有任何设备。我想我应该得到 HTTP/1.1 404 Not Found。

我试图用这个命令获取恒温器

然后它用我认为正确的相同 AUTHCODE 回复 HTTP/1.1 200 OK。再次提到我的帐户中没有任何设备。

所以我得到的回应有所不同。我的问题是,为什么我得到 401 Unauthorized 而不是 404 not found 或 200 ok 对于第一个 curl 命令?