【问题标题】:Authenticate users with Microsoft Dynamics CRM 2011 (IFD) through code (C#)通过代码 (C#) 使用 Microsoft Dynamics CRM 2011 (IFD) 对用户进行身份验证
【发布时间】:2014-11-01 05:50:52
【问题描述】:

我在 Azure 中托管的 Rollup 17 上部署了面向 Internet 的 Dynamics CRM 2011。

根据 Microsoft 网站 (http://www.microsoft.com/en-us/download/details.aspx?id=41701) 上提供的指南配置部署。

访问应用程序时,通过 ADFS 的身份验证工作正常,我可以成功访问它。

我还在尝试构建一个将连接到 CRM 的自定义 Web 应用程序。我已经下载了 CRM 2011 SDK 并尝试运行在 \SDK\SampleCode\CS\QuickStart 中找到的示例代码。但是,身份验证失败并出现以下错误:

请求通道在 00:00:59.9969195 之后等待回复时超时。增加传递给 Request 调用的超时值或增加 Binding 上的 SendTimeout 值。分配给此操作的时间可能是较长超时的一部分。

当转到内部异常详细信息时,我可以看到:

对“http://sts1.mydomain.com.au/adfs/services/trust/13/username”的 HTTP 请求已超过分配的超时时间 00:01:00。分配给此操作的时间可能是较长超时的一部分。

我试图弄清楚为什么它试图通过 HTTP 访问用户名端点。当我在我的 ADFS 服务器上打开端口 80 时,它可以正常工作并且我可以进行身份​​验证。但是,我不想打开 80 端口,我希望所有通信都通过 HTTPS!

我已经尝试了 Google 找到的所有潜在解决方案,但无济于事。

任何帮助将不胜感激。

【问题讨论】:

标签: c# authentication dynamics-crm-2011 adfs2.0


【解决方案1】:

我们与 Microsoft 支持人员合作,他们复制了我们的环境以了解发生了什么。但是,对于他们来说,身份验证请求将发送到 usernamemixed 端点,这被认为是正确的行为,因为它使用了 HTTPS。

经过一些测试,我们决定禁用 username 端点,令我们惊讶的是,请求开始转到 usernamemixed 端点,现在一切正常。 p>

所以,不知道为什么它没有像 MS 支持人员那样立即使用 usernamemixed 端点,而是在禁用 username 端点之后。我能看到的唯一区别是他们使用的是 Windows Server 2012 R2,而我们使用的是 Windows Server 2012。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-18
    • 1970-01-01
    相关资源
    最近更新 更多