Проблема интегрированной аутентификации в ColdFusion RDS и NTLM
Кажется, я не могу получить волшебную комбинацию включения аутентификации NTLM и работы RDS. Если я оставлю только анонимную аутентификацию включенной, RDS будет работать нормально - как только я включу ее для всего сайта, произойдет сбой RDS (чего и следовало ожидать). Вот что я сделал:
- Это Windows XP SP2 и ColdFusion 8, Eclipse + Adobe плагины
- В диспетчере IIS щелкните правой кнопкой мыши веб-сайт по умолчанию и выберите "Свойства".
- На вкладке "Безопасность каталога" нажмите кнопку "Редактировать" для анонимного доступа и контроля аутентификации.
- Во всплывающем окне "Методы проверки подлинности" снимите флажок "Анонимный доступ" и установите флажок "Встроенная проверка подлинности Windows" (все остальные флажки также не отображаются).
- Нажмите OK, OK и переопределите настройки для всех дочерних сайтов, чтобы весь сайт был "защищен" с помощью проверки подлинности NTLM.
- Вернувшись в диспетчер IIS, щелкните правой кнопкой мыши виртуальный каталог CFIDE, выберите Свойства
- Вкладка "Безопасность каталога", редактирование методов аутентификации. Снимите флажок Встроенная проверка подлинности Windows и проверьте анонимный доступ. Нажмите OK, OK и проверьте:
C: \> wget -S -O - http: // localhost / CFIDE / administrator / - 2009-01-21 10:11:59-- http://localhost/CFIDE/administrator/ Разрешение localhost... 127.0.0.1 Подключение к localhost|127.0.0.1|:80... подключено. HTTP-запрос отправлен в ожидании ответа... HTTP/1.1 200 ОК Сервер: Microsoft-IIS/5.1 Дата: среда, 21 января 2009 17:12:00 по Гринвичу X-Powered-By: ASP.NET Set-Cookie: CFID=712; истекает = пт, 14 января-2039 17:12:00 по Гринвичу; путь =/ Набор cookie: CFTOKEN=17139032; истекает = пт, 14 января - 2039 17:12:00 по Гринвичу; путь =/ Набор файлов cookie: CFAUTHORIZATION_cfadmin=; срок действия = понедельник, 21 января 2008 17:12:00 по Гринвичу; путь =/ Cache-Control: без кеша Content-Type: text/html; кодировка =UTF-8 Длина: не указано [текст /html] Сохранение в: `STDOUT ' ... вывод html следует...
И пока все хорошо, каталог CFIDE и, по крайней мере, один дочерний каталог работают без аутентификации NTLM. Поэтому я запускаю Eclipse и пытаюсь установить соединение RDS. К сожалению, я просто получаю сообщение об отказе в доступе. При более подробном исследовании выясняется, что Eclipse пытается установить связь с /CFIDE/main/ide.cfm - достаточно справедливо, вытащить верный wget еще раз, чтобы посмотреть, что делает IIS:
C: \> wget -S -O - http: //localhost/CFIDE/main/ide.cfm --2009-01-21 10: 16: 56-- http: //localhost/CFIDE/main/ide.cfm Разрешение localhost... 127.0.0.1 Подключение к localhost|127.0.0.1|:80... подключено. HTTP-запрос отправлен, ожидание ответа... HTTP/1.1 401 Доступ запрещен Сервер: Microsoft-IIS/5.1 Дата: среда, 21 января 2009 г. 17:16:56 GMT WWW-Authenticate: согласование WWW-Authenticate: NTLM Content-Length: 4431 Content-Type: text/html Авторизация не удалась.
Одно потенциальное зависание, которое было задокументировано в другом месте, состоит в том, что основной каталог и страница ide.cfm на самом деле не существуют на диске. IIS настроен для передачи всех файлов.cfm JRun, а JRun настроен для сопоставления ide.cfm с сервлетом RDS. В попытке заставить IIS быть немного более разумным, я удалил основной каталог и пустой файл ide.cfm на диске, надеясь, что это решит проблему аутентификации, но это не имело никакого значения.
В качестве обходного пути я могу оставить анонимный доступ ко всему сайту, а затем просто разрешить конкретным папкам приложений использовать встроенную проверку подлинности NTLM, но для этого есть буквально сотни возможных веб-приложений. Тьфу.
Пожалуйста помоги!!!
1 ответ
Есть что-то странное в ответе на ваш собственный вопрос, но я наконец-то решил его.
- Интегрированная аутентификация NTLM может быть включена для всего веб-сайта
- Анонимный доступ должен быть включен для виртуального каталога CFIDE
- Анонимный доступ должен быть включен для виртуального каталога JRunScripts
Как только у CFIDE и JRunScripts был включен анонимный доступ, RDS и отладка с помощью Eclipse работали как чудо.