首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >asp.net 6获取Windows用户

asp.net 6获取Windows用户
EN

Stack Overflow用户
提问于 2022-06-20 20:09:50
回答 1查看 161关注 0票数 0

在我看来,在apsnet核心MVC项目中,我得到了一个简单的Windows域用户。在谷歌( google )上,我看到很多人都有同样的问题,但在一个完整的auth系统中几乎没有什么建议。我只是希望打开windows并获得一个用户名,不需要任何其他函数就可以在视图中显示名称。

在过去,我曾使用:

代码语言:javascript
运行
复制
@User.Identity.Name

在我的launchSettings.json:

代码语言:javascript
运行
复制
"iisSettings": {
    "windowsAuthentication": true,
    "anonymousAuthentication": false,

我还在Program.cs中添加了:

代码语言:javascript
运行
复制
app.UseAuthentication();
app.UseAuthorization();

有没有办法只获取asp.net核心6中显示值的windows用户?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-21 07:16:23

在我看来,您应该有身份验证才能获得UserName,您需要启用Windows。

Program.cs:

代码语言:javascript
运行
复制
builder.Services.AddAuthentication(NegotiateDefaults.AuthenticationScheme)
   .AddNegotiate();

builder.Services.AddAuthorization(options =>
{
    // By default, all incoming requests will be authorized according to the default policy.
    options.FallbackPolicy = options.DefaultPolicy;
});

builder.Services.AddHttpContextAccessor();
app.UseAuthentication();
app.UseAuthorization();

launchSettings.json:

代码语言:javascript
运行
复制
"iisSettings": {
    "windowsAuthentication": true,
    "anonymousAuthentication": false,
}

主计长:

代码语言:javascript
运行
复制
string UserName = HttpContext.User.Identity.Name;

测试结果:

有关更多细节,请查看此链接

如果您不需要使用Windows自动登录用户,并且您已经有了一个自定义的登录控制器来实现这一点,那么您可以参考

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72692474

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档