远程IIS 8.5上带有ApplicationPoolIdentity
的MVC应用程序。适用于IE11,但在使用谷歌浏览器时,我会看到一个带有System.DirectoryServices.DirectoryServicesCOMException
这是导致错误的代码
protected void Session_Start()
{
// Load current AD user
UserPrincipal user = UserPrincipal.Current;
Session.Add(name: "DisplayName", value: user.DisplayName);
Session.Add(name: "AccountName", value: user.SamAccountName);
}
同样在我的Web.config文件中,我有<identity impersonate="true" />
和<validation validateIntegratedModeConfiguration="false" />
最后一位是我找到的唯一方法。但它只适用于IE。
为什么它在IE11中运行良好但在Chrome中运行不正常?我做错了什么?
使用HostingEnvironment.Impersonate()
将每次调用包装到Active Directory时,我都可以使用它。但是当我尝试使用user.Save()
System.UnauthorizedAccessException: Access denied.
我无法完全访问Active Directory域,但我可以在我的OU中重置密码并启用/禁用帐户。