在配置的安全令牌服务上找不到身份验证终结点Kerberos

时间:2017-02-21 14:39:31

标签: crm kerberos adfs

我使用AD FS服务器遇到了面向网络的CRM部署安装的挑战。设置完成后,用户可以访问CRM服务器 - 但在尝试运行自定义页面时,会提示以下错误消息:

"在配置的安全令牌服务上找不到身份验证终结点Kerberos!"

我已经在互联网上找到了几个解决这个问题的方法:

  1. 首先,我发现了一篇来自微软的知识库文章 解决方案,这涉及通过运行提供的方式更新MEX端点 PowerShell脚本。 (https://support.microsoft.com/en-us/help/2828015/configuring-ad-fs-2.1-with-microsoft-dynamics-crm-2011)。 但这似乎不是问题所在。
  2. 另一个解决方案可能是更新CRM汇总版本(目前已安装版本14,最新版本为18) - 这是我想避免的,因为它可能会导致进一步的问题。
  3. 有没有其他人遇到过类似的问题,在这种情况下你是如何解决的?

1 个答案:

答案 0 :(得分:0)

最近几天我花了同样的错误信息,结果发现它是crm连接字符串中的“域”属性。在Microsoft Dynamics CRM community forum上将我对自己问题的答案复制到了这里:

“好吧,我找到了罪魁祸首-它是连接字符串中的Domain属性:

对于从域外部进行连接,它不希望在连接字符串中包含

  1. 连接字符串格式1(无域属性):“身份验证类型=护照;服务器= https://devcrm.myco.com;用户名=devuser@myco.com;密码= pwd”-这在内部和外部均适用域“ myco.com”
  2. 连接字符串格式2(具有“域”属性):“身份验证类型=护照;服务器= https://devcrm.myco.com; = myco;用户名=devuser@myco.com;密码= pwd”-仅在域myco.com内部有效,而在外部无效(例外:在配置的安全令牌服务上找不到身份验证端点Kerberos!)

密钥在 Xrm.Client.CrmConnection.ClientCredential 中:

如果未在连接字符串中指定域,则从外部域进行连接时,将填充Xrm.Client.CrmConnection.ClientCredentials.UserName,而ClientCredentials.Windows.ClientCredentials.UserName为空。 / p>

但是,如果指定了域,则Xrm.Client.CrmConnection.ClientCredentials.UserName变为null,并填充Xrm.Client.CrmConnection.ClientCredentials.Windows.ClientCredentials.UserName,这导致该服务尝试将用户身份验证为Windows AD用户,因此从Windows域外部运行应用程序时当然会失败。并说明了即使在连接字符串中指定了Domain的情况下,为何同一个应用程序仍可在该Domain内工作的原因。

有关更多详细信息,请参阅此处以获取我在Dynamics CRM Forum

中寻求帮助的原始帖子