gpt4 book ai didi

auth0 - Auth0 用户 ID 可以随时间变化吗?

转载 作者:行者123 更新时间:2023-12-04 03:04:13 24 4
gpt4 key购买 nike

从理论上讲,如果我想将我的 Users 数据库表基于 Auth0 返回的数据并根据 Auth0 用户配置文件 ID 在我的 Users 表中维护一个唯一 ID,我会遇到 Auth0 用户 ID 已更改的情况吗?如果是这样,用户id发生变化的情况是什么?

最佳答案

这里的简单答案是 用户 ID 在 Auth0 中为给定的用户配置文件创建后不会更改。但是,还有一些其他因素需要考虑,特别是:

  • 命名空间用户 ID
  • 帐号绑定(bind)

  • Auth0 将在 userIds 前面放置一个连接类型前缀以有效地 命名空间 只是 Id 部分 - 这是通过管道完成的。例如, auth0|12345auth0|MyCustomDB|12345等等。您需要确保使用整个 userId,而不仅仅是最后一个管道之后的数值。这样做的原因是为了确保 IdP/Datastores 中的 Id 之间没有冲突,其中 Auth0 是服务提供者,而不是身份提供者。

    关于 帐号绑定(bind) ,如果您有两个单独的用户配置文件 - 每个都有自己的 UserId。当您的帐户链接时,一个将有效地成为“主要”或“顶级”用户配置文件,而另一个配置文件将成为从属的“次要”身份。并且您可以通过这种方式将多个用户配置文件链接在一起作为单个用户配置文件,但只有一个是主要的。您可以始终使用帐户链接,例如,数据库连接仍然是主要的,或者您可以只将最近创建的用户配置文件(与另一个配置文件共用一个共享的“电子邮件”)作为主要的......在这种情况下, “三级”用户配置文件将保留其原始 userId,但如果您仅查询用户配置文件(而不是拖网该用户配置文件的身份数组),那么对搜索的影响似乎是 userId 已更改。实际上,这是因为最初的“顶级”用户配置文件现在嵌套在另一个用户配置文件中。

    最后,与您的原始问题略有正交 - 但您在哪里声明 if I wanted to base my Users database table on the Auth0 returned data ,希望您在这里不是指使用 Auth0 用户配置文件 userId 作为关系数据库中的主键。创建 会更好。代理键 (没有业务意义/外部依赖的唯一键)作为您的主键,然后将 Auth0 userId 作为单独的属性存储在每个元组上。

    希望以上内容有意义,如果仍然不确定,请在下面发表评论。

    关于auth0 - Auth0 用户 ID 可以随时间变化吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46123733/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com