gpt4 book ai didi

identityserver3 - Constants.ClaimTypes 引用

转载 作者:行者123 更新时间:2023-12-04 07:07:47 25 4
gpt4 key购买 nike

我已经将 IdentityServer3 作为独立的身份服务器运行。

我有一个单独的 MVC 客户端,它使用 Cookie 和 OpenIdConnect 进行身份验证。我正在尝试在其他方面设置声明转换,并希望引用不同的声明类型,如下所示:

var givenName = id.FindFirst(Constants.ClaimTypes.GivenName);
var familyName = id.FindFirst(Constants.ClaimTypes.FamilyName);
var sub = id.FindFirst(Constants.ClaimTypes.Subject);
var roles = id.FindAll(Constants.ClaimTypes.Role);

在 IdentityServer3 上,我使用 Thinktecture.IdentityServer.Core.Constants 引用这些但是在我的 MVC 客户端上,我认为我不需要引用 Thinktecture.IdentityServer3只是为了这些字符串常量?在这种情况下是否有推荐使用的客户端库?我试过 Thinktecture.IdentityModel和一些 .NET 引用,但似乎没有一个可以复制 ClaimTypesThinktecture.IdentityServer.Core.Constants .我发现的最好的是 System.Security.Claims.ClaimTypes但这似乎缺少几个,例如 FamilyName .

我看的第一个位置是 Thinktecture.IdentityModel但很惊讶这些都不存在。

那么魔法引用是什么?或者加载 Thinktecture.IdentityServer3是否合适只为这些字符串?

谢谢

编辑:所以我找到了 Thinktecture.IdentityModel.Client其中包含 JwtClaimTypes这似乎是镜像 ClaimTypes .为什么这用 Jwt 前缀命名?

最佳答案

IdentityServer ClaimType constants只是 map OpenID Connect standard claims .

您最好为这些常量创建自己的类,正如您所说,没有必要引入完整的 Identity Server 3 包,而且我认为它们在任何其他包中都不可用...

请注意,这些声明是通过 JWT 中的 JSON 作为蛇案例出现的。例如,FamilyName 将是 family_name。

关于identityserver3 - Constants.ClaimTypes 引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31723062/

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