Asp.net 无法查询Active Directory,远程过程调用失败中间失败
在.NET4.5MVCWeb应用程序中,我们使用的是基于广告的角色,为此我们依赖于广告Asp.net 无法查询Active Directory,远程过程调用失败中间失败,asp.net,asp.net-mvc,iis,active-directory,Asp.net,Asp.net Mvc,Iis,Active Directory,在.NET4.5MVCWeb应用程序中,我们使用的是基于广告的角色,为此我们依赖于广告 System.Web.Security.Roles.GetRolesForUser(HttpContext.Current.Request.LogonUserIdentity.Name) 但是查看elmah日志,我们发现对于某些请求(而不是所有请求)来说,这是意外失败的 内部堆栈跟踪 System.Configuration.Provider.ProviderException: Unable to quer
System.Web.Security.Roles.GetRolesForUser(HttpContext.Current.Request.LogonUserIdentity.Name)
但是查看elmah日志,我们发现对于某些请求(而不是所有请求)来说,这是意外失败的
内部堆栈跟踪
System.Configuration.Provider.ProviderException: Unable to query Active Directory. ---> System.DirectoryServices.ActiveDirectory.ActiveDirectoryServerDownException: The remote procedure call failed.
at System.DirectoryServices.ActiveDirectory.Utils.GetDSHandle(String domainControllerName, String domainName, IntPtr authIdentity, LoadLibrarySafeHandle libHandle)
at System.DirectoryServices.ActiveDirectory.DomainController.GetDSHandle()
at System.DirectoryServices.ActiveDirectory.DomainController.GetDomainControllerInfo()
at System.DirectoryServices.ActiveDirectory.DomainController.get_SiteName()
at System.DirectoryServices.AccountManagement.ADStoreCtx.GetGroupsMemberOf(Principal p)
at System.DirectoryServices.AccountManagement.Principal.GetGroupsHelper()
at App.AppRoleProvider.GetRolesForUser(String username)
看到异常类型为
ActiveDirectoryServerDownException
,我可以想象应用程序正在尝试联系一个不存在的域(可能是由于服务器配置问题?),或者Active Directory出现了问题。每天6-7个请求都会出现这种情况,不是所有请求都会出现这种情况。如果出现这种情况,并且说这种情况不会经常发生,那么承载应用程序的服务器是否能够始终连接到域控制器,而不是承载在不稳定的连接上?