如何在 Auth0 租户中通过自动迁移在自定义数据库中包含用户的已验证电子邮件状态?

How to include verified email state on users from a custom database with automatic migration in an Auth0 tenant?

我设置了一个 Auth0 连接数据库,配置为自定义数据库并打开了自动迁移。总的来说工作很好。我还成功设置了强制电子邮件验证的规则,新注册用户和未验证电子邮件的老用户都需要。

当然,所有迁移的用户都必须验证他们的电子邮件地址; 但我的业务要求是,这应该只针对尚未验证其电子邮件的用户,强制已验证电子邮件的老用户这样做很烦人。

我在遗留数据库中有一个源字段,但我不确定如何迁移用户,包括 verified_email 状态。我当前的自定义数据库脚本 returns 这些值:

登录脚本:

login(email, password, callback)

...返回回调...

{
     user_id: ...,
     nickname: ...,
     email: ...,
}

获取用户脚本:

getByEmail(email, callback)

...返回回调...

{
  user_id: ...,
  nickname: ...,
  email: ...,
  name: ...,
  given_name: ...,
  family_name: ...,
}

您只需编辑您的登录脚本以获取 属性 并将其设置为 email_verified 键。就像您的脚本创建一个包含 user_idemail 和其他内容的配置文件一样,您只需添加一行以在配置文件中包含 email_verified 并使用来自的正确数据填充它您的遗留数据存储。导入时添加到配置文件的数据完全由您决定。

在这种特定情况下,所需的值是一个布尔值,因此它只是 true,没有引号。