如何解决jwt 关于 blazor web assembly 的声明和 web api 声明
当我在服务器上生成 jwt 令牌时,我的声明之一是 ClaimType.Name, 但是在 blazor web 程序集中,当我解析 jwt 令牌并获得声明时, 它的名称更改为 unique_name。
谁能解释为什么会这样?
在服务器上
new Claim(ClaimTypes.Name,user.Username);
关于 blazor 网络程序集
"unique_name" = "myUsername"
解决方法
这是设计使然。 This post 包含 JwtSecurityTokenHandler 代码摘录的详细信息。
您找到的规则来自用于进行映射的字典条目:
{ JwtRegisteredClaimNames.UniqueName,ClaimTypes.Name },
基本上,Microsoft 身份声明会(在适当时)转换为 JWT 标准名称。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。