为什么在使用 Auth0 时将用户凭据存储在 MongoDB 中?

Why store user credential in MongoDB when using Auth0?

我目前正在修复我的俱乐部大约一年前制作的一个旧项目,我看到他们使用 Auth0 进行用户身份验证,但还在 user 文档中的 mongodb 中存储用户名和散列密码. user 文档还具有管理员、经理或客户等角色,并使用这些角色来限制某些页面和资源。

我的问题是,我们将散列密码与用户名和角色一起存储是否有原因?我假设我们唯一一次使用散列密码是为了验证用户输入了有效的凭据。但是,如果我们必须使用 Auth0 进行身份验证,那么将散列密码存储在数据库中有什么好处吗?

我想了解当我们使用第三方身份验证服务(如 auth0)时存储散列密码的一般用例。

非常感谢!!

据我所知,使代码库具有灵活性始终是一个好主意,尤其是在重要项目上,尤其是在使用第三方技术时。这样做可以防止这个叫做 vendor lock-in 的东西。基本上,如果出于某种原因,您想不再使用 Auth0,那么将用户凭证保存在数据库中将使团队和用户的迁移变得更加容易。除此之外,我认为在这种情况下没有必要存储它们。