首页 > 解决方案 > Blazor,MVC。确认电子邮件。为什么 url 这么长(500 个字符)

问题描述

我记得在 Blazor 以及用于电子邮件确认的 MVC 链接非常长。一些用户对通过 URL 发送的大量数据有点怀疑。此外,如果电子邮件客户端阻止直接从电子邮件中单击的链接,那么如此长的链接很难复制到浏览器

var code = await _userManager.GenerateEmailConfirmationTokenAsync(user); // ~260
code = WebEncoders.Base64UrlEncode(Encoding.UTF8.GetBytes(code)); //~350

当我们添加其他元素时,链接的总长度约为 500 个字符。我不知道为什么那个链接这么长,但我认为在确认码中有 20-30 个字符应该可以很好地防止未经授权的电子邮件确认尝试。

有谁知道为什么该链接(代码)如此之长,以及使用更短的代码进行电子邮件确认的替代方式是否是个好主意?

标签: asp.net-mvcsecurityblazor

解决方案


推荐阅读