【问题标题】:is firebase user id unique per provider (facebook, twitter, password)每个提供商的 firebase 用户 ID 是唯一的(facebook、twitter、密码)
【发布时间】:2013-07-16 21:56:03
【问题描述】:

如果在 firebase 中允许多个身份验证提供程序(twitter、facebook、密码),最好以这种方式存储用户:

/users/[auth.id]_[auth.provider]/...

根据提供者的不同,auth.id 中似乎可能存在重叠。

大多数示例的安全文件只检查 auth.id。我试图避免创建自己的用户 ID 的复杂性。

想法?

【问题讨论】:

    标签: facebook authentication twitter firebase


    【解决方案1】:

    是的,如果您通过简单登录使用多个身份验证提供程序,建议您使用提供程序作为前缀或后缀。 auth.id 只保证在同一个提供者中是唯一的。

    Firebase 现在在 auth 对象上提供了一个 uid 参数,该参数保证在提供者之间是唯一的。例如,请参阅任何简单登录提供程序的“验证后”,例如 email/password

    【讨论】:

    • 如果 Firebase 可以为用户对象提供 firebaseID 那就太好了。找出用户选择了哪个提供者,将其附加到新的 id 属性等方面的工作要少得多。
    • auth.id 是否被完全删除?我认为,如果没有提供者,id 仍然有用。 firebase.com/docs/security/api/rule/auth.html
    猜你喜欢
    • 2017-07-11
    • 2017-10-01
    • 2017-11-24
    • 1970-01-01
    • 2014-03-18
    • 1970-01-01
    • 2017-04-01
    • 2016-09-20
    • 2015-07-29
    相关资源
    最近更新 更多