【问题标题】:How to show other users information (such as photos or usernames) using Firebase?如何使用 Firebase 显示其他用户信息(例如照片或用户名)?
【发布时间】:2018-03-12 21:06:21
【问题描述】:

我目前正在开发一个 Firebase android 应用程序,在做了一些 research 之后,出于安全原因,Firebase 似乎不允许应用程序显示登录用户以外的用户信息。

我想知道有哪些安全的方法可以做到这一点,或者通常如何做到这一点,因为如果您无论如何都不能向其他用户展示个人资料图片和其他信息,那么有什么意义呢?

例如,我是否应该在 Firebase 存储中为每个用户保存一份个人资料图片副本?我应该如何将实际图像链接到相应的用户?关于用户的其他相关信息呢,我应该在firebase数据库中创建一个“用户”节点,以某种方式链接到“身份验证”中的原始用户吗?

【问题讨论】:

    标签: android firebase authentication firebase-storage firebaseui


    【解决方案1】:
    1. 我应该在 Firebase 存储中为每个用户保存一份个人资料图片副本吗? 是
    2. 我应该如何将实际图像链接到他们相应的用户? 您可以创建一个文件夹用户,然后为每个用户创建一个文件夹,其用户 ID 唯一地标识每个用户。换句话说,您可以像这样创建 Firebase 存储结构:

      用户 |_userid |_图片

    3. 我是否应该在 firebase 数据库中创建一个“用户”节点,以某种方式链接到“身份验证”中的原始用户? 当然如果你想存储并获取用户信息。只是避免存储密码和电子邮件。

    【讨论】:

    • 感谢您的回答。应用程序的安全性如何,我会用这种方法降低它的安全性吗?
    • 为了提高数据库安全性和数据隐私,您可以随时添加数据库规则(用于实时数据库和存储)。有了这些,您可以控制谁可以访问哪些数据。我强烈建议您在这里查看文档:firebase.google.com/docs/database/security
    • @Arrabidas92 好答案。两个小补充。用户的电子邮件存储在 Firebase 中的用户对象中,并且始终可以使用 String email = user.getEmail(); 进行检索。他们的个人资料图片也是如此 - 它不需要单独管理;可以使用 Uri photoUrl = user.getPhotoUrl(); 从用户对象中检索 url,参见 Manage Users
    • @Jay 我相信这只适用于当前用户,我的问题是关于如何对数据库中的每个用户执行此操作
    猜你喜欢
    • 1970-01-01
    • 2019-06-12
    • 1970-01-01
    • 2019-03-08
    • 1970-01-01
    • 2021-08-17
    • 2023-03-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多