locked
Unable to add new users in CRM RRS feed

  • Question

  • I installed CRM with SQL and reporting server on different machine. I used a service account for APP Pool and Async service. And in AD CRM OU is a child OU. After completing the installation when i tried to add new users in CRM I am getting an error which i am not able to figure out where the problem is. below i copied the trace, please let me know if you have any solutions.

    [2011-01-19 20:36:34.8] Process: w3wp |Organization:1d6e2789-7c8d-4c85-83ce-f1a5dd27a02f |Thread:    3 |Category: Exception |User: 1c04363a-1299-47c9-8ef9-6ab1a213bbec |Level: Error | CrmException..ctor
     at CrmException..ctor(String message, Exception innerException, Int32 errorCode, Boolean isFlowControlException)
     at CrmConfigObjectNotFoundException..ctor(String message)
     at ServerLocatorService.GetCrmUserId(Guid organizationId, String authenticationInfo)
     at LocatorService.GetCrmUserId(Guid organizationId, String authenticationInfo)
     at SystemUserServiceInternal`1.CheckUserDoesNotExist(Guid activeDirectoryGuid, SecurityIdentifier identifier, Boolean isActiveDirectoryUser, ExecutionContext context)
     at SystemUserServiceInternal`1.CreateInternal(Guid organizationId, IBusinessEntity systemuser, ExecutionContext context)
     at SystemUserServiceInternal`1.Create(IBusinessEntity systemuser, ExecutionContext context)
     at RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
     at RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
     at RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
     at LogicalMethodInfo.Invoke(Object target, Object[] values)
     at InternalOperationPlugin.Execute(IPluginExecutionContext context)
     at PluginStep.Execute(PipelineExecutionContext context)
     at Pipeline.Execute(PipelineExecutionContext context)
     at MessageProcessor.Execute(PipelineExecutionContext context)
     at InternalMessageDispatcher.Execute(PipelineExecutionContext context)
     at ExternalMessageDispatcher.Execute(String messageName, Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, PropertyBag fields, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
     at RequestBase.Process(Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
     at RequestBase.Process(CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
     at CrmServiceInternal.Execute(RequestBase request, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
     at InProcessCrmService.Execute(Object request)
     at PlatformCommand.ExecuteInternal()
     at CreateCommand.Execute()
     at SystemUser.Create(Boolean performDuplicateCheck)
     at EntityProxy.CreateAndRetrieve(String columnSet, Boolean performDuplicateCheck)
     at AppForm.RaiseDataEvent(FormEventId eventId)
     at EndUserForm.Initialize(Entity entity)
     at CustomizableForm.Execute(Entity entity, String formType)
     at SystemUserDetailPage.ConfigureForm()
     at AppUIPage.OnPreRender(EventArgs e)
     at Control.PreRenderRecursiveInternal()
     at Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
     at Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
     at Page.ProcessRequest()
     at Page.ProcessRequest(HttpContext context)
     at ceridian_biz_users_edit_aspx.ProcessRequest(HttpContext context)
     at CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
     at HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
     at ApplicationStepManager.ResumeSteps(Exception error)
     at HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext context, AsyncCallback cb, Object extraData)
     at HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr)
     at HttpRuntime.ProcessRequestNoDemand(HttpWorkerRequest wr)
     at ISAPIRuntime.ProcessRequest(IntPtr ecb, Int32 iWRType)
    >Crm Exception: Message: User Was Not Found, ErrorCode: -2147220969
    [2011-01-19 20:36:35.5] Process: w3wp |Organization:1d6e2789-7c8d-4c85-83ce-f1a5dd27a02f |Thread:    3 |Category: Platform |User: 1c04363a-1299-47c9-8ef9-6ab1a213bbec |Level: Error | MessageProcessor.Execute
    >MessageProcessor fail to process message 'Create' for 'systemuser'.
    [2011-01-19 20:36:35.5] Process: w3wp |Organization:1d6e2789-7c8d-4c85-83ce-f1a5dd27a02f |Thread:    3 |Category: Exception |User: 1c04363a-1299-47c9-8ef9-6ab1a213bbec |Level: Error | CrmException..ctor
     at CrmException..ctor(String message, Exception innerException, Int32 errorCode)
     at SoapExtensionExceptionHandlerBase.GetCrmException(Exception exception)
     at InProcessCrmService.Execute(Object request)
     at PlatformCommand.ExecuteInternal()
     at CreateCommand.Execute()
     at SystemUser.Create(Boolean performDuplicateCheck)
     at EntityProxy.CreateAndRetrieve(String columnSet, Boolean performDuplicateCheck)
     at AppForm.RaiseDataEvent(FormEventId eventId)
     at EndUserForm.Initialize(Entity entity)
     at CustomizableForm.Execute(Entity entity, String formType)
     at SystemUserDetailPage.ConfigureForm()
     at AppUIPage.OnPreRender(EventArgs e)
     at Control.PreRenderRecursiveInternal()
     at Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
     at Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
     at Page.ProcessRequest()
     at Page.ProcessRequest(HttpContext context)
     at ceridian_biz_users_edit_aspx.ProcessRequest(HttpContext context)
     at CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
     at HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
     at ApplicationStepManager.ResumeSteps(Exception error)
     at HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext context, AsyncCallback cb, Object extraData)
     at HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr)
     at HttpRuntime.ProcessRequestNoDemand(HttpWorkerRequest wr)
     at ISAPIRuntime.ProcessRequest(IntPtr ecb, Int32 iWRType)
    >Crm Exception: Message: , ErrorCode: -2147016651, InnerException: System.DirectoryServices.DirectoryServicesCOMException (0x80072035): The server is unwilling to process the request. (Exception from HRESULT: 0x80072035)
    [2011-01-19 20:36:35.5] Process: w3wp |Organization:1d6e2789-7c8d-4c85-83ce-f1a5dd27a02f |Thread:    3 |Category: Application |User: 00000000-0000-0000-0000-000000000000 |Level: Error | ErrorInformation.LogError
    >MSCRM Error Report:
    --------------------------------------------------------------------------------------------------------
    Error: Exception has been thrown by the target of an invocation.

    Error Message: Exception has been thrown by the target of an invocation.

    Source File: Not available

    Line Number: Not available

    Request URL: http://localhost:5555/Ceridian/biz/users/edit.aspx?_CreateFromType=10&_CreateFromId={43BBF75F-E723-E011-84D3-005056915300}

    Stack Trace Info: [DirectoryServicesCOMException: The server is unwilling to process the request. (Exception from HRESULT: 0x80072035)]


    [TargetInvocationException: Exception has been thrown by the target of an invocation.]
       at System.DirectoryServices.DirectoryEntry.Invoke(String methodName, Object[] args)
       at Microsoft.Crm.BusinessEntities.SecurityUtils.AddPrincipalToGroup(SecurityIdentifier sid, DirectoryEntry groupEntry)
       at Microsoft.Crm.BusinessEntities.SecurityUtils.AddPrincipalToGroup(Guid principalId, SecurityIdentifier sid, Guid groupId)
       at Microsoft.Crm.BusinessEntities.SecurityLibrary.AddPrincipalToGroup(Guid principalId, SecurityIdentifier sid, Guid groupId)
       at Microsoft.Crm.ObjectModel.SystemUserServiceInternal`1.ManageGroupsHelper(Guid activeDirectoryGuid, SecurityIdentifier identifier, Boolean remove, ExecutionContext context)
       at Microsoft.Crm.ObjectModel.SystemUserServiceInternal`1.AddPrincipalToGroups(Guid activeDirectoryGuid, SecurityIdentifier identifier, ExecutionContext context)
       at Microsoft.Crm.ObjectModel.SystemUserServiceInternal`1.CreateInternal(Guid organizationId, IBusinessEntity systemuser, ExecutionContext context)
       at Microsoft.Crm.ObjectModel.SystemUserServiceInternal`1.Create(IBusinessEntity systemuser, ExecutionContext context)

    [TargetInvocationException: Exception has been thrown by the target of an invocation.]
       at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
       at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
       at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
       at System.Web.Services.Protocols.LogicalMethodInfo.Invoke(Object target, Object[] values)
       at Microsoft.Crm.Extensibility.InternalOperationPlugin.Execute(IPluginExecutionContext context)
       at Microsoft.Crm.Extensibility.PluginStep.Execute(PipelineExecutionContext context)
       at Microsoft.Crm.Extensibility.Pipeline.Execute(PipelineExecutionContext context)
       at Microsoft.Crm.Extensibility.MessageProcessor.Execute(PipelineExecutionContext context)
       at Microsoft.Crm.Extensibility.InternalMessageDispatcher.Execute(PipelineExecutionContext context)
       at Microsoft.Crm.Extensibility.ExternalMessageDispatcher.Execute(String messageName, Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, PropertyBag fields, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
       at Microsoft.Crm.Sdk.RequestBase.Process(Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
       at Microsoft.Crm.Sdk.RequestBase.Process(CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
       at Microsoft.Crm.Sdk.CrmServiceInternal.Execute(RequestBase request, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
       at Microsoft.Crm.Sdk.InProcessCrmService.Execute(Object request)
       at Microsoft.Crm.Application.Platform.ServiceCommands.PlatformCommand.ExecuteInternal()
       at Microsoft.Crm.Application.Platform.ServiceCommands.CreateCommand.Execute()
       at Microsoft.Crm.Application.Platform.SystemUser.Create(Boolean performDuplicateCheck)
       at Microsoft.Crm.Application.Platform.EntityProxy.CreateAndRetrieve(String columnSet, Boolean performDuplicateCheck)
       at Microsoft.Crm.Application.Forms.AppForm.RaiseDataEvent(FormEventId eventId)

     

    Thursday, January 20, 2011 3:10 AM

Answers

All replies

  • Try changing the registry setting HKLMMicrosoftMSCRMAutoGroupManagement from 0 to 1.  Reset IIS or recycle the CRMAppPool and try again
    MSCRM Bing'd - http://bingsoft.wordpress.com
    Check out the CRM 4 to CRM 2011 JavaScript Converter Tool
    CRM Forum Guidance on how to Help Us Help You
    Thursday, January 20, 2011 1:47 PM
    Moderator
  • Thank you! it worked.

    Could you please provide some more details on this? what caused thie issue?

    Thursday, January 20, 2011 2:52 PM
  • The same way it works for me. Please let us know why it works and what was the reason for error?
    Tuesday, April 19, 2011 7:30 AM
  • This explanation is taken from here http://support.microsoft.com/kb/946677

     

    Auto Group Management options

    The Auto Group Management option is used to determine how the appropriate users and the appropriate computers are added to the security groups. Microsoft Dynamics CRM can add the users and the computers. Or, a user who has appropriate permissions in the Microsoft Dynamics CRM security groups can manually add the users and the computers.

    For the Auto Group Management option, use one of the following methods. Use Method 1 to set the AutoGroupManagementOff option to "false" and to have Auto Group Management turned on. Use Method 2 to set the AutoGroupManagementOff option to "true" and to have Auto Group Management turned off.

    Note The Auto Group Management option can be used only if you are installing Microsoft Dynamics CRM by using pre-created Active Directory security groups.

    Note: When import organization wizard runs to import organization it considers AutoGroupManagementOff registry value to assign necessary SQL permissions on the imported database. If it's set to 1 import org wizard will not assign SQL permissions on the database, so SQL permissions may need to be assigned through SQL management studio after the import wizard succeeds. If it's set to 0 import org wizard will assign SQL permissions on the database. By default AutoGroupManagementOff reg value is set to 0.


    MS CRM Bing'd - http://bingsoft.wordpress.com
    Useful Tools  CRM 4 to CRM 2011 JavaScript Converter Tool
    CRM 2011 OData Query Designer
    CRM Forum Guidance on how to Help Us Help You
    Thursday, October 20, 2011 8:46 AM
    Moderator