email - Auth0:让用户重新发送验证邮件
问题描述
我在 Auth0 中启用了用户/密码连接,我希望在继续之前验证电子邮件。我启用了相应的规则来强制进行电子邮件验证,一切似乎都按预期工作。
不过,我注意到验证电子邮件是在注册时发送的。我想要一个按钮来允许再次发送该电子邮件,但这似乎是不可能的。
用户如何从 UI 请求验证电子邮件?
调用https://<tenantName>.auth0.com/api/v2/jobs/verification-email
不会,因为令牌需要update:users范围。我们可以通过对 的请求获得具有该范围的令牌https://<tenantName>.auth0.com/oauth/token
,但这意味着客户端机密将被公开。
解决方案
有一个解决方法,我用它作为邮件验证信号。auth0 创建一张票并向我们发送一个带有票号作为查询字符串的链接以验证电子邮件,发送的链接如下所示:
https://<domain>/u/email-verification?ticket=h7CtBxPXiej7FtaKo0UHYJtdWPazaHhs#
您可以使用此 api 重新发送电子邮件验证链接,这是请求的示例:
curl --location --request POST 'https://<domain>/api/v2/tickets/email-verification' \
--header 'Authorization: Bearer <token> \
--header 'Content-Type: application/json' \
--header 'Cookie: __cfduid=d7aa37a65221ad2c0fd17ec71c76f13eb1603727648; did=s%3Av0%3A694d6590-1a83-11eb-877d-d1f701a6b5e1.qweiCQT%2Fah2JbVlHe8mU7En5egRFtrEmjETM%2B%2BIKmzc; did_compat=s%3Av0%3A694d6590-1a83-11eb-877d-d1f701a6b5e1.qweiCQT%2Fah2JbVlHe8mU7En5egRFtrEmjETM%2B%2BIKmzc' \
--data-raw '{
"result_url": "<redirection_url>",
"user_id": <auth0_user_id>,
"ttl_sec": 0,
"includeEmailInRedirect": false,
"identity": {
"user_id": "<user_id>",
"provider": "auth0"
}
}'
推荐阅读
- python - 熊猫:回顾过去
- python - MongoDB对属性的最接近匹配给出属性的一部分
- javascript - 如何使用重叠 div 获取当前悬停位置?
- c# - 为什么在将值传递给另一个 C# 表单到文本框字段时 SELECT 不选择 TESTID?
- c# - .netcore 从 2.1 升级到 3.1 问题
- python - 使用 tkinter 的 tix 模块的 Python 代码在命令提示符下工作正常,但在转换为可执行文件后使用它时显示错误
- axapta - 使用来自单击事件处理程序 d365fo 的临时表填充网格
- ajax - 在 Laravel 中使用 Ajax 编辑数据
- javascript - 在 JavaScript 中用另一个按钮替换一个按钮
- c# - Stripe - 如何在 Checkout.Session 中获取账单地址信息