将ADFS 2.0服务绑定到特定的IP地址

我有一台ADFS-2.0服务器和一些网站。 其中一个网站是Dynamics CRM,它在端口443上监听特定的IP地址。

Dynamics CRM提供了用于configuration的元数据文件,可用于configurationADFS的中继方信任。 它可以通过URL访问

https://auth.contoso.com/FederationMetadata/2007-06/federationmetadata.xml

问题是ADFS-2.0安装了一个注册以下urlacl的服务

HTTPS:// +:443 / FederationMetadata / 2007-06 /

这意味着访问URL的结果https://auth.contoso.com/FederationMetadata/2007-06/federationmetadata.xml是ADFS的元数据文件,而不是Dynamics CRM的元数据文件。

我试图删除默认的urlacl并添加(一次一个)

https://192.168.1.2:443/FederationMetadata/2007-06/ https://adfs.mydomain.com:443/FederationMetadata/2007-06/

但他们都没有工作。 相反,ADFS服务无法启动完成。

有没有办法将这个服务绑定到一个IP地址? 目前我只看到两个select

  1. 将服务绑定到非标准端口。 这会导致问题,因为这意味着ADFS网站也必须使用非标准的HTTPS端口。

  2. 在不同的服务器上安装ADFS-2.0(这是我最喜欢的select – 但是在任何情况下都是不可能的)

我假设Dynamics有自己的网站,并没有使用默认的网站。 这可能是完全不正确的。

无论哪种方式,如果他们是独立的网站,为什么不简单设置HTTPS主机头,并确保默认站点和dynamic网站都明确分配或绑定到某个主机头或IP。 您始终可以将多个IP分配给计算机上的同一个NIC。

IIS SSL主机头命令:

 appcmd set site /site.name:"Name of Website in IIS" /+bindings.[protocol='https',bindingInformation='*:443:Host Header'] 

我有完全相同的configuration,也正在寻找类似的决议。 经过大量的search后,我发现解释了在不同于443的端口上启动ADFS的解决方法。不幸的是我无法成功实现它,但我不确定问题是我的具体configuration还是一般的解决方法。

我也没有尝试玩urlacl – 看来问题可能就在那里。 使用netsh http show urlacl查看由ADFS添加的三个url。

所以如果你有机会试试看。

最后,我决定采用第二种方法 – 在不同的机器上安装ADFS,这基本上是MS提供的解决scheme。

我知道这个问题是关于在特定的IP上绑定ADFS,而我不能帮你。
问题也是几年,但我的答案仍然适用于想在同一端口上运行ADFS和Dynamics CRM的人。

我可以说的是,我已经在标准HTTPS端口443上使用Dynamics CRM 2016与ADFS一起工作。

您可以在此处看到完整的案例: 使用端口443在同一台服务器上安装带有IFD和ADFS的Microsoft Dynamics CRM 2016

基本上,您可以使用urlhttps://auth.contoso.com/Handlers/FederationMetadata.ashx来获取dynamic联盟元数据,而不是https://auth.contoso.com/FederationMetadata/2007-06/federationmetadata.xml

或者,您可以更改Dynamics CRM web.config,并在其他path上提供元数据。