【发布时间】:2020-10-29 10:56:25
【问题描述】:
我已经设置了一个Blazor WebAssembly ASP.NET Core hosted应用程序并将身份验证系统以及自定义AuthenticationProvider集成到客户端。在服务器端项目中,我在控制器中调用:
[HttpGet]
public async Task<ActionResult> GetObjects()
{
var id = User.FindFirstValue(ClaimTypes.NameIdentifier); // <-- returns always null
}
id 变量总是返回 null。
用户来自aspnetcoreuser表(aspnetcore身份)
在表数据中,我可以看到,当我使用 SQLite 时,id 不为空,并且用户已成功添加到 aspnetuser 表中。
一些 SDK 版本:
.NET Core SDK 已安装: 3.1.301 .NET Core 运行时安装:Microsoft.AspNetCore.All 2.1.19 Microsoft.AspNetCore.App 2.1.19Microsoft.AspNetCore.App 3.1.5 Microsoft.NETCore.App 2.1.19 Microsoft.NETCore.App 3.1.5 Microsoft.WindowsDesktop.App 3.1.5
我还看到了一些解决方案,launchSettings.json 中的 "windowsAuthentication": true, "anonymousAuthentication": false, 可能会导致该问题,但通过更改它并没有为我解决。
这里有谁能帮帮我吗?
【问题讨论】:
标签: c# asp.net-core blazor asp.net-authorization blazor-webassembly