У меня есть один сервер с ADFS-2.0 и несколько сайтов на нем. Один из веб-сайтов - Dynamics CRM, который прослушивает определенный IP-адрес на порту 443.
Dynamics CRM предоставляет файл метаданных для целей конфигурации, который можно использовать для настройки доверия ретрансляционной стороны с ADFS. Он доступен по URL-адресу
https://auth.contoso.com/FederationMetadata/2007-06/federationmetadata.xml
Проблема в том, что ADFS-2.0 устанавливает службу, которая регистрирует следующий urlacl
Это означает результат доступа к 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-адресу? На данный момент я вижу только две альтернативы
Привяжите службу к нестандартному порту. Это приводит к проблемам, потому что это означает, что веб-сайт ADFS также должен использовать нестандартный HTTPS-порт.
Установите ADFS-2.0 на другой сервер (это моя любимая альтернатива - однако это возможно не во всех ситуациях ...)
Я предполагаю, что Dynamics имеет свой собственный веб-сайт и не использует веб-сайт по умолчанию. Это может быть совершенно неверно.
В любом случае, если это отдельные сайты, почему бы вам просто не настроить заголовки хоста HTTPS и убедиться, что сайт по умолчанию и сайт динамики специально назначены или привязаны к определенному заголовку хоста или IP. Вы всегда можете назначить несколько IP-адресов одному и тому же сетевому адаптеру на машине.
Команда заголовка узла SSL IIS:
appcmd set site /site.name:"Name of Website in IIS" /+bindings.[protocol='https',bindingInformation='*:443:Host Header']
Я знаю, что вопрос касается привязки ADFS к определенному IP, и в этом я не могу вам помочь.
Этому вопросу тоже несколько лет, но мой ответ по-прежнему применим к тем, кто хочет запускать ADFS и Dynamics CRM на одном порте.
Что я могу сказать, так это то, что у меня Dynamics CRM 2016 работает вместе с ADFS на стандартном HTTPS-порту 443.
Вы можете увидеть полную историю здесь: Установите Microsoft Dynamics CRM 2016 с IFD и ADFS на одном сервере, используя порт 443
В основном вы можете использовать URL-адрес https://auth.contoso.com/Handlers/FederationMetadata.ashx чтобы получить метаданные Dynamics Federation вместо https://auth.contoso.com/FederationMetadata/2007-06/federationmetadata.xml
Или вы можете изменить Dynamics CRM web.config и предоставить метаданные по другому пути.
У меня была точно такая же конфигурация, и я тоже искал подобное разрешение. После долгих поисков я нашел этот в котором объясняется обходной путь для запуска ADFS на порту, отличном от 443. К сожалению, мне не удалось его успешно реализовать, но я не уверен, была ли проблема в моей конкретной конфигурации или в обходном пути в целом.
Также я не пробовал играть с urlacl
- похоже, проблема тут же. Использовать netsh http show urlacl
чтобы увидеть три URL-адреса, добавленные ADFS.
Так что попробуйте, если у вас есть шанс.
В конце концов я остановился на втором варианте - установке ADFS на другой компьютер, что в основном является решением, предложенным MS.