Dynamics CRM 2013预先跨域AD身份验证

时间:2018-06-14 15:50:44

标签: c# dynamics-crm crm dynamics-crm-2013

我有一个.NET Web应用程序,我可以从中调用OrganizationService并在CRM中执行一些更新。这是我用来获取服务引用的代码:

 public IOrganizationService GetOrganizationService() {
  try {
    IServiceConfiguration<IOrganizationService> orgConfigInfo = ServiceConfigurationFactory.CreateConfiguration<IOrganizationService>( new Uri( "http://crm:5555/CRM/XRMServices/2011/Organization.svc" ) );
    AuthenticationCredentials authCredentials = new AuthenticationCredentials();
    authCredentials.ClientCredentials.Windows.ClientCredential = new System.Net.NetworkCredential( "andy", "pass123!", "MyDomain" );
    using ( OrganizationServiceProxy organizationProxy = new OrganizationServiceProxy( orgConfigInfo, authCredentials.ClientCredentials ) ) { 
      organizationProxy.EnableProxyTypes();
      IOrganizationService service = (IOrganizationService) organizationProxy;
      return service;
    }
  }
  catch ( Exception e ) {
    return null;
  }
}

只要应用程序与CRM位于同一域中,就可以正常工作。当我将连接信息(URI,用户名,密码,域)更改为指向其他域中的CRM系统时,我得到了身份验证失败的异常。我能够在部署了我的Web应用程序的计算机上使用相同帐户从浏览器登录CRM系统,以便在两个域之间建立连接。

我怀疑某些凭据的域名部分被忽略了 - 我已经测试过更改域名,同时仍然将应用和CRM放在同一个域中并且身份验证成功甚至使用错误的域名。

如何使用AD身份验证从其他域正确连接到CRM系统?

0 个答案:

没有答案
相关问题