2015-02-06 42 views
0

我有一个web api控制器,我需要获取承载IIS中的web应用程序的应用程序池的标识。如何在web api控制器中获取应用程序池的标识

我已经试过

string threadName = System.Threading.Thread.CurrentPrincipal.Identity.Name; 
string username = this.User.Identity.Name; 

但都为null。我想要运行w3wp.exe的名称,例如IIS APPPOOL \ DefaultAppPool或NETWORKSERVICE或应用程序池配置为运行的任何名称。

尝试使用身份验证=无,这是在VS2013中创建一个新的Wep Api项目时的默认值,也尝试使用Forms auth,但没有运气。

+0

使用IIS API得到它,因为user.Identity.Name和线程的主要将是无效的,除非有人登录进入会话,或者如果明确设置身份并且应用程序池上的加载用户配置文件为真。 https://msdn.microsoft.com/en-us/library/aa347649%28v=vs.90%29.aspx – 2015-02-06 00:52:05

+0

可能出现[以编程方式获取应用程序池标识]的副本(http://stackoverflow.com/问题/ 10101162/GET-的应用程序池身份,编程) – 2015-02-06 08:10:52

回答

相关问题