我有一个web api控制器,我需要获取在IIS中托管Web应用程序的应用程序池的标识。
我试过了
string threadName = System.Threading.Thread.CurrentPrincipal.Identity.Name;
string username = this.User.Identity.Name;
但两者都是空的。我想要运行w3wp.exe的名称,例如IIS APPPOOL \ DefaultAppPool或NETWORKSERVICE,或者将应用程序池配置为运行的任何名称。
尝试使用authentication = none,这是在VS2013中创建新的Wep Api项目时的默认设置,也尝试使用Forms auth,但没有运气。
答案 0 :(得分:0)
在这个主题上找到答案:Get the Application Pool Identity programmatically
我在寻找
string appPoolName = System.Security.Principal.WindowsIdentity.GetCurrent().Name;