ESB Configuration Tool: The Specified Directory Service Attribute Or Value Does Not Exist

1.1k Views Asked by At

I'm trying to configure ESB Exception Management (ESB Toolkit 2.1) and after successfully creating the ESBExceptionDB I try to configure the Exception Web Services.

When I press Apply Configuration I get the error message "The Specified Directory Service Attribute Or Value Does Not Exist".

Error log:

EsbConfigurationTool.exe Error: 0 : An error has occurred: 
The specified directory service attribute or value does not exist.

Stack Trace:
at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)
at System.DirectoryServices.DirectoryEntry.Bind()
at System.DirectoryServices.DirectoryEntry.get_SchemaEntry()
at System.DirectoryServices.AccountManagement.ADStoreCtx.IsContainer(DirectoryEntry de)
at System.DirectoryServices.AccountManagement.ADStoreCtx..ctor(DirectoryEntry ctxBase,        Boolean ownCtxBase, String username, String password, ContextOptions options)
at   System.DirectoryServices.AccountManagement.PrincipalContext.CreateContextFromDirectoryEntry (DirectoryEntry entry)
at  System.DirectoryServices.AccountManagement.PrincipalContext.DoLDAPDirectoryInitNoContainer( )
at System.DirectoryServices.AccountManagement.PrincipalContext.DoDomainInit()
at System.DirectoryServices.AccountManagement.PrincipalContext.Initialize()
at System.DirectoryServices.AccountManagement.PrincipalContext.get_QueryCtx()
at   System.DirectoryServices.AccountManagement.Principal.FindByIdentityWithTypeHelper(Principal  Context context, Type principalType, Nullable`1 identityType, String identityValue,   DateTime refDate)
at  System.DirectoryServices.AccountManagement.Principal.FindByIdentityWithType(PrincipalContex t context, Type principalType, String identityValue)
at System.DirectoryServices.AccountManagement.UserPrincipal.FindByIdentity(PrincipalContext context, String identityValue)
at EsbConfigurationTool.Panels.PanelBase.IsUserMemberOf(PrincipalContext context, String username, String groupName)
at EsbConfigurationTool.Panels.PanelBase.ValidateCredential(NetworkCredential credentials, String groupName)
at EsbConfigurationTool.Panels.WebServicesException.Save()
at EsbConfigurationTool.EsbConfiguration.OnTsBtnSaveClick(Object sender, EventArgs e)

What am I missing?

1

There are 1 best solutions below

0
On BEST ANSWER

I ended up creating the applications in IIS manually and it seems to work.

I created these application pools:

  • CoreESBAppPool Classic Pipeline and the user account you would specifiy in the configuration tool
  • CoreEsbNetworkAppPool Integrated pipeline NetworkService
  • CoreEsbOpsAppPool Integrated pipeline NetworkService
  • CoreEsbWcfAppPool Integrated pipeline user account
  • ExceptionESBAppPool Classic pipeline user account
  • ExceptionEsbWcfAppPool Integrated pipeline user account

I then created the following applications

  • ESB.BizTalkOperationsService AppPool = CoreEsbOpsAppPool Physical path = C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.BizTalkOperationsService
  • ESB.ExceptionHandlingServices AppPool = ExceptionESBAppPool Physical Path = C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.ExceptionHandlingServices
  • ESB.ExceptionHandlingServices.WCF AppPool = ExceptionEsbWcfAppPool Physical path = C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.ExceptionHandlingServices.WCF
    • ESB.Exceptions.Service AppPool = ExceptionESBAppPool Physical path = C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portal\ESB.Exceptions.Service\ESB.Exceptions.Service
  • ESB.ItineraryServices AppPool = CoreESBAppPool Physical path = C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.ItineraryServices
  • ESB.ItineraryServices.Generic.Response.WCF AppPool = CoreEsbWcfAppPool Physical Path = C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.ItineraryServices.Generic.Response.WCF
  • ESB.ItineraryServices.Generic.WCF AppPool = CoreEsbWcfAppPool Physical Path = C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.ItineraryServices.Generic.WCF
  • ESB.ItineraryServices.Response AppPool = CoreESBAppPool Physical Path = C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.ItineraryServices.Response
  • ESB.ItineraryServices.Response.WCF AppPool = CoreEsbWcfAppPool Physical Path = C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.ItineraryServices.Response.WCF
  • ESB.ItineraryServices.WCF AppPool = CoreEsbWcfAppPool Physical Path = C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.ItineraryServices.WCF
  • ESB.ResolverServices AppPool = CoreEsbNetworkAppPool Physical Path = C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.ResolverServices
  • ESB.ResolverServices.WCF AppPool = CoreEsbWcfAppPool Physical Path = C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.ResolverServices.WCF
  • ESB.TransformServices AppPool = CoreESBAppPool Physical Path = C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.TransformServices
  • ESB.TransformServices.WCF AppPool = CoreEsbWcfAppPool Physical Path = C:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.ResolverServices.WCF

And then I disabled anonymous authentication for ESB.BizTalkOperationsService and enabled ASP.NET Impersonation and Windows Authentication.