Dynamics CRM 2011:将CrmSvcUtil.exe与基于IFD声明的身份验证配合使用

时间:2012-07-26 07:07:19

标签: dynamics-crm-2011 dynamics-crm claims-based-identity

我们拥有Dynamics CRM 2011的单一服务器开发环境,具有基于IFD +声明的身份验证设置。

努力运行CrmSvcUtil命令而不会收到以下“访问被拒绝”错误。我们以管理员身份运行util,他也是Dynamics CRM 2011中的系统管理员。

我们正在运行的命令是:

CrmSvcUtil.exe /url:https://myorg.deepspace9.com:444/myorg/XRMServices/2011/Organization.svc /out:MyOutputFile.cs /username:"deepspace9\administrator" /password:password*1

我们最终收到错误:

CrmSvcUtil : CRM Service Utility [Version 5.0.9690.2165]
c 2011 Microsoft Corporation.  All rights reserved.

CrmSvcUtil.exe Error: 0 : Exiting program with exit code 2 due to exception : System.ServiceModel.Security.SecurityAccessDeniedException: Access is denied.

Server stack trace: 
   at System.ServiceModel.Channels.ServiceChannel.ThrowIfFaultUnderstood(Message reply, MessageFault fault, String action, MessageVersion version, FaultConverter faultConverter)
   at System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]: 
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   at Microsoft.Xrm.Sdk.IOrganizationService.Execute(OrganizationRequest request)
   at Microsoft.Xrm.Sdk.Client.OrganizationServiceProxy.ExecuteCore(OrganizationRequest request)
   at Microsoft.Crm.Services.Utility.SdkMetadataProviderService.RetrieveEntities(IOrganizationService service)
   at Microsoft.Crm.Services.Utility.SdkMetadataProviderService.Microsoft.Crm.Services.Utility.IMetadataProviderService.LoadMetadata()
   at Microsoft.Crm.Services.Utility.CrmSvcUtil.Run()
   at Microsoft.Crm.Services.Utility.CrmSvcUtil.Main(String[] args)

我们还尝试在http://community.adxstudio.com/products/adxstudio-portals/developers-guide/knowledge-base/crmsvcutilexe/claims-based-authentication-workaround-for-sdk-ver/

上运行说明

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

管理以使其正常运行。按照http://blog.thinketg.com/blog/ben-klopfer/strongly-typed-code-file-generation-with-crmsvcutilexe-for-crm-2011-ifd-configurations-code

上的说明操作

我不得不运行HTML解码来摆脱HTML标签而且我没有打扰创建批处理文件 - 我只是直接运行命令:

CrmSvcUtil.exe /metadataproviderservice:"MetadataProvider.IfdMetadataProviderService, MetadataProvider" /codecustomization:"Microsoft.Xrm.Client.CodeGeneration.CodeCustomization, Microsoft.Xrm.Client.CodeGeneration" /url:"https://myorg.deepspace9.com:444/XRMServices/2011/Organization.svc" /out:"outputOrganizationXrm.cs" /namespace:OrganizationXrm /serviceContextName:XrmServiceContext /serviceContextPrefix:Xrm /u:"deepspace9\administrator" /p:password*1