Auth0 是否提供导出用户数据库的方法?

Does Auth0 provide a way to export a user database?

Auth0 看起来是一个非常有前途的用户管理解决方案,但我很好奇它是否允许您导出用户数据库。

这是一项重要功能,因为:

  1. 我想制作自己的备份。 (倒不是因为我担心 Auth0 可能会丢失我的数据。但是如果我的代码中有错误或者我的 Auth0 密钥被泄露怎么办?)
  2. 有一天我可能想更换用户管理提供商。

Documentation > Importing Users to Auth0,我看到有一种导入用户的方法(无论如何都可以获取他们的密码时按需导入)。我可以看到他们使用 bcrypt 进行密码哈希处理(至少在默认情况下是这样)。但我没有看到任何提及导出用户

Auth0 管理 API 允许您导出数据。此外,我们还有一个工具可以帮助您导入和导出用户:https://auth0.com/docs/extensions/user-import-export

有关官方政策,请参阅此文档:https://auth0.com/docs/policies/data-export

A​​uth0 目前不提供直接导出密码哈希值的功能。不是在他们的 API 上,也不是从他们的网络界面下载。可能他们永远不会提供此功能,这样做会在一定程度上降低安全性,因为可以访问您的 Auth0 帐户的攻击者随后可能会尝试暴力破解所有用户的帐户,而不仅仅是活动帐户。

要获得或多或少的用户数据计算导出,有三种可能的方式,所有这些方式都需要提前 activity。

  1. 请求从支持中完全导出 - 目前您必须至少注册开发人员级别的支持至少一个月(请参阅文档 Moving out of Auth0
  2. 通过在用户每次登录时创建一个新的本地密码散列来逐步退出。- 您将不得不等待所有用户登录一次。这是 procedure for migrating in to Auth0 的倒数。 N.B。这意味着您会错过在迁移期间从未登录过的用户。
  3. 使用 Auth0s custom database connection 自行创建并存储密码哈希,以便在您的用户登录时使用。如果您已经在 Auth0 中拥有用户,您可以将此方法与方法 2 结合使用,以将这些用户迁移到您的自定义数据库中。

Nathan Totten 在这里的回答涵盖了如何获取其余用户数据,尽管 Auth0 支持应该能够为您提供包括所有这些数据的导出。