I recently encountered an issue where Dynamics GP users no longer were able to log into the GP Web Client with their domain credentials. Before the issue was reported (by multiple users), the users were able to log in without problems.
When attempting to log in to the GP Web Client with domain credentials at the initial login, an error was displayed stating “Unexpected Error” with the following notes – “An unexpected error has occurred. Press the Sign-in button to reconnect to the application.”
When clicking the “Sign In” button the system will load the login screen.
By browsing to the Event Viewer and reviewing the logs for Dynamics GP I noted the following message:
d2ac643a-e378-45a3-bc89-b508c8de5d66:An unexpected error has occurred. Press the Sign-in button to reconnect to the application.:https://servername.domain.com:48651/SessionService:System.Web.HttpUnhandledException (0x80004005): Exception of type ‘System.Web.HttpUnhandledException’ was thrown. —> System.ServiceModel.FaultException`1[System.ServiceModel.ExceptionDetail]: There is no such object on the server. (Fault Detail is equal to An ExceptionDetail, likely created by IncludeExceptionDetailInFaults=true, whose value is: System.DirectoryServices.AccountManagement.PrincipalOperationException: There is no such object on the server. —-> System.DirectoryServices.DirectoryServicesCOMException: There is no such object on the server.
at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)
at System.DirectoryServices.PropertyValueCollection..ctor(DirectoryEntry entry, String propertyName)
at System.DirectoryServices.PropertyCollection.get_Item(String propertyName)
at System.DirectoryServices.AccountManagement.ADStoreCtx.GetGroupMembership(GroupPrincipal g, Boolean recursive)
— End of inner ExceptionDetail stack trace —
at System.DirectoryServices.AccountManagement.ADStoreCtx.GetGroupMembership(GroupPrincipal g, Bo…).
at System.Web.UI.Page.HandleError(Exception e)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
The key line to highlight is “System.DirectoryServices.DirectoryServicesCOMException: There is no such object on the server.” This line indicates that Active Directory was involved with this error.
By doing some research I realized that a system administrator had moved the security groups created for the GP Web Client to a different organizational unit (OU).
(For additional information on security groups for the GP Web Client – please visit this informative blog post: https://community.dynamics.com/gp/b/azurecurve/archive/2014/01/28/microsoft-dynamics-gp-2013-sp2-web-client-scale-out-deployment-creating-security-groups-in-ad-for-the-web-client.aspx)
Since the security groups were moved from one OU to another, I had to update the GP Web Client configurations as follows:
1. On the GP Web Server (the server with the GP web client and configuration installed), browse to Control Panel
2. Browse to Programs and Features
3. Select Microsoft Dynamics GP Web Client and click Change
4. When prompted with the Program Maintenance screen, select Add / Remove Features
5. Proceed through the wizard with the same information as the initial setup until you reach the Windows User Group section:
6. Update the OU location for security groups:
- For Web Client Users, hit Select.
- Search and select the security group configured for the GP Web Users (i.e. GPWebUsers)
- For Web Management Console Users, hit Select.
- Search and select the security group configured for the GP Web Management Console (i.e. GPWebConsoleUsers)
7. Proceed through the wizard with the same information as the initial setup
8. Restart the Session Host services
9. Restart the Session Central services.
10. Launch the GP Web Client site and login to confirm authentication.
If Session Host is installed on separate servers, perform the same steps for every Session Host server to update the security group location.
For more information or assistance with Microsoft Dynamics GP, please contact FMT Consultants.
Written by Jamie Tieu, IT Consultant
Posted by: Jakob Bechgaard