0

Dynamics CRM 4 更新プログラムのロールアップ 6 を IFD として構成し、展開構成ツールを使用して UserRootPath を設定しました。CRM インターフェイスを介してユーザーを追加すると、完全に機能します。ただし、CrmService API を使用してユーザーを追加しようとすると、ユーザーが追加されず、以下に含まれるトレース メッセージが表示されます。組織から UserRootPath 設定を削除すると、CrmService API を使用してユーザーを追加できます。パスは正しいように見え、他の LDAP ツール内で機能し、ユーザーは指定された OU 内にあります。パス「LDAP://dcserver/OU=testorg;OU=Hosting;DC=domain;DC=local」を使用しています。

[2009-09-29 13:19:54.7] プロセス: w3wp |組織:---- |スレッド: 9 |カテゴリ: Platform.Sdk |ユーザー: ---- |レベル: エラー | CompositeSoapExtensionExceptionHandler.Handle
>CrmSoapExtension が CrmException を検出しました:
System.Web.Services.Protocols.SoapException: サーバーは要求を処理できませんでした。---> System.Reflection.TargetInvocationException: 呼び出しのターゲットによって例外がスローされました。---> System.DirectoryServices.DirectoryServicesCOMException (0x80072020): 操作エラーが発生しました。

   System.DirectoryServices.DirectoryEntry.Bind (ブール値 throwIfFail) で
   System.DirectoryServices.DirectoryEntry.Bind() で
   System.DirectoryServices.DirectoryEntry.get_AdsObject() で
   System.DirectoryServices.DirectorySearcher.FindAll (ブール値の findMoreThanOne) で
   System.DirectoryServices.DirectorySearcher.FindOne() で
   Microsoft.Crm.ObjectModel.SystemUserServiceInternal`1.CheckUserUnderRootPath (文字列 domainAccountName、ExecutionContext コンテキスト) で
   Microsoft.Crm.ObjectModel.SystemUserServiceInternal`1.CreateInternal (Guid organizationId、IBusinessEntity システム ユーザー、ExecutionContext コンテキスト) で
   Microsoft.Crm.ObjectModel.SystemUserServiceInternal`1.Create (IBusinessEntity システム ユーザー、ExecutionContext コンテキスト) で
   --- 内部例外スタック トレースの終了 ---
   System.RuntimeMethodHandle._InvokeMethodFast (オブジェクト ターゲット、Object[] 引数、SignatureStruct& sig、MethodAttributes methodAttributes、RuntimeTypeHandle typeOwner) で
   System.Reflection.RuntimeMethodInfo.Invoke (オブジェクト obj、BindingFlags invokeAttr、バインダー バインダー、オブジェクト [] パラメーター、CultureInfo カルチャ、ブール値の skipVisibilityChecks) で
   System.Reflection.RuntimeMethodInfo.Invoke (オブジェクト obj、BindingFlags invokeAttr、バインダー バインダー、オブジェクト [] パラメーター、CultureInfo カルチャ) で
   System.Web.Services.Protocols.LogicalMethodInfo.Invoke (オブジェクト ターゲット、オブジェクト [] 値) で
   Microsoft.Crm.Extensibility.InternalOperationPlugin.Execute (IPluginExecutionContext コンテキスト) で
   Microsoft.Crm.Extensibility.PluginStep.Execute (PipelineExecutionContext コンテキスト) で
   Microsoft.Crm.Extensibility.Pipeline.Execute (PipelineExecutionContext コンテキスト) で
   Microsoft.Crm.Extensibility.MessageProcessor.Execute (PipelineExecutionContext コンテキスト) で
   Microsoft.Crm.Extensibility.InternalMessageDispatcher.Execute (PipelineExecutionContext コンテキスト) で
   Microsoft.Crm.Extensibility.ExternalMessageDispatcher.Execute (文字列 messageName、Int32 primaryObjectTypeCode、Int32 secondaryObjectTypeCode、PropertyBag フィールド、CorrelationToken correlationToken、CallerOriginToken originToken、UserAuth userAuth、Guid callerId) で
   Microsoft.Crm.Sdk.RequestBase.Process (Int32 primaryObjectTypeCode、Int32 secondaryObjectTypeCode、CorrelationToken correlationToken、CallerOriginToken originToken、UserAuth userAuth、Guid callerId) で
   Microsoft.Crm.Sdk.RequestBase.Process (CorrelationToken correlationToken、CallerOriginToken originToken、UserAuth userAuth、Guid callerId) で
   Microsoft.Crm.Sdk.CrmServiceInternal.Execute (RequestBase 要求、CorrelationToken correlationToken、CallerOriginToken originToken、UserAuth userAuth、Guid callerId) で
   Microsoft.Crm.Sdk.Crm2007.CrmService.Execute (要求要求) で
   --- 内部例外スタック トレースの終了 ---
4

1 に答える 1

1

0x80072020 エラーは、AD の一般的な「アクセスが拒否されました」に関連しています。

構成によっては、以下を変更して問題の特定を試みることができます。

1) Active Directory ユーザーとコンピューターを使用して、アプリケーション プール ユーザーに "委任" オプションを付与します。2) web.config を MSCRMServices フォルダーに追加し、次のように偽装をオンにします。

< identity impersonate="true" userName="mydomain\bob" password="builder" />

于 2009-10-02T03:23:26.313 に答える