Asp.net core 使用openiddict时访问身份验证票证信息

Asp.net core 使用openiddict时访问身份验证票证信息,asp.net-core,openid-connect,openiddict,Asp.net Core,Openid Connect,Openiddict,当身份验证服务器与资源服务器分离时,是否有任何方法可以访问身份验证服务器上的身份验证票证信息集 在身份验证服务器上,我可以访问使用 var authInfo = await Request.HttpContext.Authentication.GetAuthenticateInfoAsync(OAuthValidationDefaults.AuthenticationScheme); var myProperty= authInfo.Properties.Items.FirstOrDe

当身份验证服务器与资源服务器分离时,是否有任何方法可以访问身份验证服务器上的身份验证票证信息集

在身份验证服务器上,我可以访问使用

var authInfo = await Request.HttpContext.Authentication.GetAuthenticateInfoAsync(OAuthValidationDefaults.AuthenticationScheme);

    var myProperty= authInfo.Properties.Items.FirstOrDefault(p => p.Key.Equals("property_name"));

但是,当我在资源服务器上尝试此操作时,无法看到相同的属性。

要能够访问存储在访问令牌中的身份验证属性,必须使用默认访问令牌和验证中间件


当使用内省中间件时,您不能传递这些属性。相反,将它们存储为声明,以便能够将它们公开给您的资源服务器。

有趣的是,这应该是可行的。您确定要使用验证中间件(以及默认令牌格式)?我使用的是内省中间件。如果验证服务器与资源服务器分开,我不认为我可以使用验证中间件?如果资源服务器配置为使用相同的ASP.NET核心数据保护密钥环,并且在DP选项中配置了相同的应用程序名称,则可以使用资源服务器的验证中间件。你可以阅读更多信息。这已经是一个案例,所以这将起作用。我明天就试一试。我觉得正确的解决办法是在你下面的答案。