如何将Firebase数据库锁定到来自特定(电子邮件)域的任何用户?

塞思·拉德(Seth Ladd)

我有一个使用Firebase数据库的小型个人Firebase Webapp。我想将此应用程序安全(锁定)给来自单个特定域的任何用户。我想向Google进行身份验证。我不清楚如何配置规则以说“只有来自单个特定域(例如@foobar.com)的用户才能读写此数据库”。

(我看到的部分问题:很难用足够的信息来引导数据库以使此用例起作用。我需要在身份验证时知道用户的电子邮件,但auth对象不包含电子邮件。这似乎是鸡蛋问题,因为我需要编写引用数据库中数据的Firebase规则,但该数据尚不存在,因为我的用户无法写入数据库。)

如果auth有电子邮件,那么我可以轻松地编写规则。

提前致谢!

弗兰克·范普菲伦

如果您使用的是新的Firebase,则现在可以实现,因为email安全规则中提供了。

在安全规则中,您既可以访问电子邮件地址,也可以访问是否经过验证,这使得一些很好的用例成为可能。例如,使用这些规则,只有经过身份验证,已验证的gmail用户才能编写其个人资料:

{
  "rules": {
    ".read": "auth != null",
    "gmailUsers": {
      "$uid": {
        ".write": "auth.token.email_verified == true && 
                   auth.token.email.matches(/.*@gmail.com$/)"
      }
    }
  }
}

您可以在项目的Firebase数据库控制台输入这些规则

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将用户电子邮件从 Firebase 身份验证检索到实时数据库

来自分类Dev

如何显示 MySQL 数据库中的特定数据?(获取用户的电子邮件)

来自分类Dev

如何将旧的电子邮件数据库导入eM Client?

来自分类Dev

将电子邮件发送到来自不同域的多个地址(使用抄送)

来自分类Dev

来自用户帐户数据库的自动电子邮件

来自分类Dev

如何从 Laravel 中的数据库表向多个用户(电子邮件地址)发送动态电子邮件?

来自分类Dev

如何将电子邮件附件直接保存到数据库而不先保存到HDD?

来自分类Dev

rails 在表单提交时将当前用户的电子邮件存储在数据库中

来自分类Dev

显示特定电子邮件的数据库

来自分类Dev

如何根据 Laravel 中发布的电子邮件从数据库获取用户名

来自分类Dev

如何检查用户电子邮件是否已保存在数据库中

来自分类Dev

如何将Google表格列中的值与数组进行比较,以及如何基于列数据将其发送到特定电子邮件以及如何将电子邮件发送给特定用户

来自分类Dev

Firebase如何验证要登录的电子邮件属于数据库中的哪个类别?

来自分类Dev

如何更新 Android 中存在某些电子邮件的 Firebase 数据库?

来自分类Dev

添加自定义域以用于Firebase实时数据库(即验证电子邮件链接)

来自分类Dev

Laravel注册。仅注册拥有来自特定域的电子邮件的用户

来自分类Dev

如何将电子邮件退回至特定电子邮件地址

来自分类Dev

如何使用phpmyadmin将通配符添加到任何用户或数据库?

来自分类Dev

如何使用phpmyadmin将通配符添加到任何用户或数据库?

来自分类Dev

一旦用户使用电子邮件验证了自己的身份,如何从MySQL数据库中删除用户

来自分类Dev

使用 Firebase 函数将实时数据库中的数据发送到电子邮件

来自分类Dev

仅将 ID 添加到数据库中,而未添加用户名、电子邮件、密码

来自分类Dev

Ruby on Rails:在数据库中迁移用户时如何防止确认电子邮件?

来自分类Dev

创建新用户时,如何使用luman验证数据库中存在的电子邮件?

来自分类Dev

提交表单时,如何检查用户电子邮件是否已存在于我的数据库中?

来自分类Dev

如何在ASP.NET MVC中使用邮政将电子邮件发送到数据库中的多个电子邮件地址

来自分类Dev

Laravel:通过用户标识将电子邮件发送到数据库内部的电子邮件地址

来自分类Dev

发送电子邮件而不在数据库中保留任何内容

来自分类Dev

当Firebase数据库中的电子邮件Val不可用时,如何显示错误消息

Related 相关文章

  1. 1

    如何将用户电子邮件从 Firebase 身份验证检索到实时数据库

  2. 2

    如何显示 MySQL 数据库中的特定数据?(获取用户的电子邮件)

  3. 3

    如何将旧的电子邮件数据库导入eM Client?

  4. 4

    将电子邮件发送到来自不同域的多个地址(使用抄送)

  5. 5

    来自用户帐户数据库的自动电子邮件

  6. 6

    如何从 Laravel 中的数据库表向多个用户(电子邮件地址)发送动态电子邮件?

  7. 7

    如何将电子邮件附件直接保存到数据库而不先保存到HDD?

  8. 8

    rails 在表单提交时将当前用户的电子邮件存储在数据库中

  9. 9

    显示特定电子邮件的数据库

  10. 10

    如何根据 Laravel 中发布的电子邮件从数据库获取用户名

  11. 11

    如何检查用户电子邮件是否已保存在数据库中

  12. 12

    如何将Google表格列中的值与数组进行比较,以及如何基于列数据将其发送到特定电子邮件以及如何将电子邮件发送给特定用户

  13. 13

    Firebase如何验证要登录的电子邮件属于数据库中的哪个类别?

  14. 14

    如何更新 Android 中存在某些电子邮件的 Firebase 数据库?

  15. 15

    添加自定义域以用于Firebase实时数据库(即验证电子邮件链接)

  16. 16

    Laravel注册。仅注册拥有来自特定域的电子邮件的用户

  17. 17

    如何将电子邮件退回至特定电子邮件地址

  18. 18

    如何使用phpmyadmin将通配符添加到任何用户或数据库?

  19. 19

    如何使用phpmyadmin将通配符添加到任何用户或数据库?

  20. 20

    一旦用户使用电子邮件验证了自己的身份,如何从MySQL数据库中删除用户

  21. 21

    使用 Firebase 函数将实时数据库中的数据发送到电子邮件

  22. 22

    仅将 ID 添加到数据库中,而未添加用户名、电子邮件、密码

  23. 23

    Ruby on Rails:在数据库中迁移用户时如何防止确认电子邮件?

  24. 24

    创建新用户时,如何使用luman验证数据库中存在的电子邮件?

  25. 25

    提交表单时,如何检查用户电子邮件是否已存在于我的数据库中?

  26. 26

    如何在ASP.NET MVC中使用邮政将电子邮件发送到数据库中的多个电子邮件地址

  27. 27

    Laravel:通过用户标识将电子邮件发送到数据库内部的电子邮件地址

  28. 28

    发送电子邮件而不在数据库中保留任何内容

  29. 29

    当Firebase数据库中的电子邮件Val不可用时,如何显示错误消息

热门标签

归档