ASP.NET 代码获取运行 ASP.NET 的帐户

作者:vkvi 来源:千一网络(原创) 日期:2010-4-21
System.Security.Principal.WindowsIdentity.GetCurrent().Name

默认情况下:

  • Windows 2000 的 IIS 5 中,该值为:计算机名\ASPNET
  • Windows 2003 的 IIS 6 和 Windows 2008 的 IIS 7 中,该值为:NT AUTHORITY\NETWORK SERVICE。

在开启了 ASP.NET 模拟的情况下,该值就是运行的模拟帐户,比如 IUSR_CFTEA。

顺便说一下,为什么要模拟呢?在虚拟主机中,若不使用模拟,则各个虚拟主机站点使用 ASP.NET 时,都使用同一个帐户来运行(如上面介绍的),这样就造成虚拟主机 A 可以访问的资源,虚拟主机 B 也可以访问,这就不安全了,如果一模拟,则各个虚拟主机运行 ASP.NET 的帐户就可以不同了,就可以利用 NTFS 权限隔离资源了。

IIS 5、IIS 6 中模拟帐户是归在 ASP.NET 设置中的,而 IIS 7 将其放在身份认证中。注意,在 IIS 中设置的模拟帐户其实就是设置应用程序下 web.config 的 system.web 节下的 <identity impersonate="true" />,也就是说应用程序所有者也可以更改该节的值

你前面那位网友看了:cssText-到底性能高还是性能低呢?

▲▲▲嘿,欢迎转载传播本站原创文章,尽量保留来源噢。▲▲▲

文章评论
标题:必填
内容:
本站永远终止与捏造“罪名”不支付广告费的某度联盟合作。
vkvi
vkvi

作者简介: vkvi,致力于 .NET Web 开发、移动开发的技术推广,在 .NET、SQL Server、Windows Server 等方面有深入研究和丰富经验,10 年间共计撰写文章 4000 余篇。 主持金融、国土、农业、电商等多个行业项目执行, 推行“技术提升生产力、人心决定成功率”的管理理论。 联系他