HttpContext.Current.Request.LogonUserIdentity?.Name获取windows 用户名失败。

最近在做公司的一个项目(项目是内部工厂人员使用),其中有一个功能要求获取用户当前的windows用户名

HttpContext.Current.Request.LogonUserIdentity?.Name 可获取

在本地编译正常。当我通过svn上传服务器后,获取的用户名总是 “NT AUTHORITY\IUSR“,个人猜测是服务器那边的配置问题(没有权限查看,刚入公司也不清楚是谁在管理这个 o_o ),所以希望将项目部署在本地IIS服务器上,查看原因。

项目发布

我使用的是visual studio 2017

右击项目==> publish ==> start ==> 选泽 IIS,FTP,etc ==> 点击publish==>在 publish method 下拉框中选择 File System ==>选择你想放置的文件夹(建议自定义一个文件夹)==>然后点击下一步,选择release 配置==>点击 保存

安装IIS

安装IIS(这个网上很容易搜到)

项目部署

打开Internet information services Manager ==> 右击sites ==> 点击addwebsite ==> 输入sitename, 一般情况下 application pool 自动跟你的 sitenane一样==> physical path 选择你项目发布的路径 ==> 选择一个ip address ,输入一个端口号(可自定义) ==> 点击 ok,这时候你就可以输入你设置的地址在浏览器中访问你的网站了。

问题解决

这个时候在本地服务器中,获取的用户名还是 “NT AUTHORITY\IUSR”,需要修改网站用户身份验证方式。一般情况下,网站部署后,自动默认为 anonymous authenticaiton, j将它关闭。然后将 windows authentication 开启。此时,问题解决,可以获取windows的用户名了。

原文地址:https://www.cnblogs.com/zhao-jian/p/10286099.html

时间: 2024-07-31 08:49:40

HttpContext.Current.Request.LogonUserIdentity?.Name获取windows 用户名失败。的相关文章

HttpContext.Current.Request.Url 地址:获取域名

假设当前页完整地址是:http://www.test.com/aaa/bbb.aspx?id=5&name=kelli 协议名----http://域名  ---- www.test.com站点名---aaa页面名(文件名) ----bbb.aspx参数------id=5&name=kelli 1.完整url (协议名+域名+站点名+文件名+参数) string url=Request.Url.ToString(); url= http://www.test.com/aaa/bbb.as

【C#】关于HttpContext.Current.Request.QueryString 你要知道点

HttpContext.Current.Request.QueryString[ ]括号中是获取另一个页面传过的的参数值 HttpContext.Current.Request.Form[“ID”]····Form获取值是根据name="ID"不是id="ID"的 Request["param"] 全部Request.QueryString["param"] 获取GET传参Request.Form["param&qu

HttpContext.Current.Request.Files

HttpFileCollection files = HttpContext.Current.Request.Files; 如果 files返回的结果总是不对 解决:必须为file控件添加Name属性 <script type="text/javascript"> function addFile() { var str = '<div class="R_C_Column"><div class="R_C_Left"

HttpContext.Current.Request.Url

假设当前页完整地址是:http://www.test.com/aaa/bbb.aspx?id=5&name=kelli协议名----http://域名  ---- www.test.com站点名---aaa页面名(文件名) ----bbb.aspx参数------id=5&name=kelli 1.完整url (协议名+域名+站点名+文件名+参数)string url=Request.Url.ToString();url= http://www.test.com/aaa/bbb.aspx?

多线程下使用HttpContext.Current.Cache.Get(key) 获取缓存时抛出null错误

解决办法如下: 1 /// <summary> 2 /// 获取缓存对象 3 /// </summary> 4 /// <param name="key">缓存Key</param> 5 /// <returns>object对象</returns> 6 public static object Get(string key) 7 { 8 if (string.IsNullOrEmpty(key)) 9 { 10

什么情况下HttpContext.Current.Request.UrlReferrer为空

The situations where this ServerVariable works include the following methods of a browser loading a URL: clicking on a straight HTML <a href> link; submitting a form, using POST or GET, from a submit button, <input type=image> or client-side s

HttpContext.Current并非无处不在

原文地址:http://www.cnblogs.com/fish-li/archive/2013/04/06/3002940.html 阅读目录 开始 无处不在的HttpContext HttpContext.Current到底保存在哪里? HttpContext并非无处不在! 如何获取文件绝对路径? 异步调用中如何访问HttpContext? 安全地使用HttpContext.Current 了解ASP.NET的开发人员都知道它有个非常强大的对象 HttpContext,而且为了方便,ASP.

HttpContext.Current

阅读目录 开始 无处不在的HttpContext HttpContext.Current到底保存在哪里? HttpContext并非无处不在! 如何获取文件绝对路径? 异步调用中如何访问HttpContext? 安全地使用HttpContext.Current 了解ASP.NET的开发人员都知道它有个非常强大的对象 HttpContext,而且为了方便,ASP.NET还为它提供了一个静态属性HttpContext.Current来访问它, 今天的博客打算就从HttpContext.Current

HttpContext.Current.User is null after installing .NET Framework 4.5

故障原因:从framework4.0到framework4.5的升级过程中,原有的form认证方式发生了变化,所以不再支持User.Identity.Name原有存储模式(基于cookie),要恢复这个功能,我也是偶然间发现的. 一下五种解决方案根据具体情况供参考 1.降级处理,把你的framework降到4.0 <compilation debug="true " targetFramework=" 4.0" /> < httpRuntime t