asp.net - 如何在 AspNet 5 中获取 HttpContext.Current.User.Identity.Name?

标签 asp.net asp.net-core httpcontext

如何使用 Asp.Net 5 获取 User.Identity.Name?我在 stackoverflow 的答案中读到,HttpContext 在此版本中不再可用,人们正在使用 HttpContextAccessor,但我尝试使用它,但对我不起作用,我的上下文返回始终为 null。

还有其他方法可以做到这一点吗?有人建议返回到 Asp.Net 4.5 版本吗?

所以,我有一些要点需要考虑.. - 我的应用程序工作正常,但我需要识别正在使用该系统的用户。 - 我正在使用“域\用户”将允许的用户存储在数据库中,我需要维护它。 - 我正在使用 EntityFramework、AspNet5 和 angularjs

有什么建议吗?

最佳答案

我希望您尝试实现 Windows 身份验证并以 User.Identity.Name 的形式访问“域\用户”详细信息。

最近或不久的将来身份验证的工作方式是将用户详细信息存储在 Sql 服务器、Active Directory、Azure 或 openID 等中。

ASP.NET 5 在身份管理方面取得了很大的进步,以利用 Active Directory、SQL Server、Azure 等基础设施改进;在所有这些过程中,ASP.NET 5 已停用“Windows 身份验证”。查看图像,它是在从模板创建 ASP.NET 5 项目期间

ASP.NET 5 disabled Windows Authentication

重新考虑在 User.Identity.Name 方面使用 ASP.NET 5,我觉得没有必要仅仅因为 Windows 身份验证被禁用而迁移到 ASP.NET 4.5,微软提供了其他更好的方法来完成它。

更多地了解您的需求,我们可以给出更好的建议。

ASP.NET 5 仍处于测试阶段,在其生产就绪之前使用它来学习技能

关于asp.net - 如何在 AspNet 5 中获取 HttpContext.Current.User.Identity.Name?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33039358/

相关文章:

c# - 每次加载页面时随机显示三个不同的问题

c# - 无法创建 SSL/TLS 安全通道适用于 winforms 但不适用于 asp.net

c# - ASP.NET 中的自定义类型应用程序设置

azure - 将 Serilog 中的 outputTemplate 参数与 Azure Application Insights 结合使用

azure - 以编程方式设置 Azure 应用服务应用程序设置/环境变量

c# - 使用 linq 识别日期冲突

c# - ASP.NET Core (.NET Core) 和 ASP.NET Core (.NET Framework) 的区别

asp.net - 是否可以在 ASP.NET 重定向期间设置 cookie?

尝试访问 Request.Url 时,ASP.NET HttpModule 因 NullReference 异常而失败