Asp.net core 登录MVC.netaspcore客户端时从IdentityServer4返回活动用户

Asp.net core 登录MVC.netaspcore客户端时从IdentityServer4返回活动用户,asp.net-core,model-view-controller,identityserver4,Asp.net Core,Model View Controller,Identityserver4,我肯定有人问过这个问题,或者是一些我正在努力解决的简单问题 我已经阅读了Identity Server文档,并且能够设置为服务器、api和MVC客户端 我可以使用Identity Server登录到MVC客户端 我正在尝试将当前登录用户和注销添加到一个_loginPartial,这应该证明我也可以基于登录对视图进行授权。但我一直遇到UserManger没有注册类型的错误 任何帮助,甚至链接到和例子将不胜感激 根据IdentityServer4 mvc客户端示例代码,您可以从用户声明中获取当前用户

我肯定有人问过这个问题,或者是一些我正在努力解决的简单问题

我已经阅读了Identity Server文档,并且能够设置为服务器、api和MVC客户端

我可以使用Identity Server登录到MVC客户端

我正在尝试将当前登录用户和注销添加到一个_loginPartial,这应该证明我也可以基于登录对视图进行授权。但我一直遇到UserManger没有注册类型的错误


任何帮助,甚至链接到和例子将不胜感激

根据IdentityServer4 mvc客户端示例代码,您可以从用户声明中获取当前用户。要显示所有声明,您可以使用

@foreach (var claim in User.Claims)
{
    <dt>@claim.Type</dt>
    <dd>@claim.Value</dd>
}
注销操作:

public IActionResult Logout()
    {
        return SignOut("Cookies", "oidc");
    }

你试过这个吗?请注意,有不同的存储实现。某些示例使用内存,而其他示例使用EFCore。看看
9\u组合的\u AspId\u和\u EFStorage
。这是一个可用作起点的工作示例。请注意,UserManager仅在IdentityServer中可用。客户端无法访问用户存储。因此,您拥有的所有信息要么在索赔中(例如索赔类型名称、给定名称),要么来自业务商店,例如
子索赔链接到员工的员工表。@RuardvanElburg谢谢,我将在下面更详细地研究索赔。
public IActionResult Logout()
    {
        return SignOut("Cookies", "oidc");
    }