在 ASP.Net 核心 API 中检索用户所属的所有角色(组)
Retrieve all the roles (groups) a user is a member of in ASP.Net Core API
我正在尝试检索用户所在的所有角色。
这个在我的本地 IIS 上工作正常,因为我是登录的那个,但是当我把 API 放到服务器时,它检索的不是我的角色。
[Authorize(Roles = "Admin")]
[HttpGet]
public IActionResult Get()
{
WindowsIdentity user = WindowsIdentity.GetCurrent();
var userRoles = from id in user.Groups
select id.Translate(typeof(NTAccount)).Value;
return Ok(userRoles);
}
如果我将 WindowsIdentity 更改为 IIdentity,我会在本地和服务器上获得正确的用户,但我无法访问角色。
IIdentity user = User.Identity;
return Ok(user);
如何检索访问 API 的用户所在的所有角色列表?
结果我很亲近,谁需要就简单了。在第一个例子中替换这个:
WindowsIdentity user = WindowsIdentity.GetCurrent();
那个:
var user = User.Identity as WindowsIdentity;
我正在尝试检索用户所在的所有角色。
这个在我的本地 IIS 上工作正常,因为我是登录的那个,但是当我把 API 放到服务器时,它检索的不是我的角色。
[Authorize(Roles = "Admin")]
[HttpGet]
public IActionResult Get()
{
WindowsIdentity user = WindowsIdentity.GetCurrent();
var userRoles = from id in user.Groups
select id.Translate(typeof(NTAccount)).Value;
return Ok(userRoles);
}
如果我将 WindowsIdentity 更改为 IIdentity,我会在本地和服务器上获得正确的用户,但我无法访问角色。
IIdentity user = User.Identity;
return Ok(user);
如何检索访问 API 的用户所在的所有角色列表?
结果我很亲近,谁需要就简单了。在第一个例子中替换这个:
WindowsIdentity user = WindowsIdentity.GetCurrent();
那个:
var user = User.Identity as WindowsIdentity;