Тестирование веб-сервиса с помощью аутентификации SoapUI и Windows
Можно ли включить учетные данные домена Windows для проверки моего веб-сервиса с помощью интерфейса SOAP?
Я нашел страницу свойств, но IIS просто ответил с "неправильными учетными данными".
Ответы
Ответ 1
SoapUI, похоже, не работает напрямую с аутентификацией NTLM, но вы можете использовать прокси-сервер, такой как Burp Suite, для выполнения авторизации для вас.
- Загрузите Burp Suite из http://portswigger.net/burp/ и запустите его.
- На вкладке "Прокси: перехват" Burp нажмите кнопку, чтобы отключить перехват.
- На вкладке "Прокси: Параметры" Burp, убедитесь, что он установлен на неиспользуемый порт, по умолчанию 8081
- Вкладка "Параметры" на вкладке "Burp" отметьте "сделать аутентификацию по www" и добавьте параметр для сервера, который вы хотите поразить. Также отметьте "запрос учетных данных при сбое аутентификации"
- Перейдите на вкладку "Прокси: история" Burp, чтобы просмотреть просматриваемые запросы.
- В SoapUI выберите "Файл" > "Настройки", затем выберите "Настройки прокси". Введите Host "localhost" и порт "8081".
- Использовать SoapUI как обычно. Он отправит запросы через Burp Proxy, который будет выполнять аутентификацию NTLM для вас.
Ответ 2
soapUI 4.5 просто добавила поддержку NTLMv2, что отрицает необходимость в Burp Suite.
Ответ 3
Принятое решение будет работать в большинстве сценариев. Если, однако, служба использует делегирование для доступа к ресурсам на других серверах, вы столкнетесь с проблемой двойного перехвата с помощью проверки подлинности NTLM, используемой прокси-сервером Burp. Прокси-сервер успешно выполнит аутентификацию службы, но последующие вызовы, выполняемые службой другим ресурсам с использованием делегирования, не будут выполнены.
Проблема хорошо описана в этой статье:
http://blogs.msdn.com/b/besidethepoint/archive/2010/05/09/double-hop-authentication-why-ntlm-fails-and-kerberos-works.aspx
Простейшим обходным решением, которое я нашел для этого, было использование Fiddler в качестве прокси. В меню правил Fiddler выберите "Автоматически аутентифицировать". Затем обновите настройки SoapUI, чтобы использовать скрипач в качестве прокси (по умолчанию используется localhost: 8888). Теперь ваши вызовы будут завернуты в учетные данные, которые могут быть делегированы.
Если вы используете LoadUI для выполнения тестовых примеров SoapUI, тестовый бег SoapUI будет использовать настройки прокси-сервера SoapUI, и ваши вызовы будут продолжать работать.
Ответ 4
Я думаю, SoapUI может поддерживать только аутентификацию NT для WSDL.
вы можете увидеть некоторые детали того, как это реализовано здесь:
(BTW, этот поиск google не выглядит многообещающим для вас!)
Ответ 5
Текущая версия SoapUI 4.5.1 не работает с проверкой подлинности Windows, но ночная версия сборки снова запускается.
Загрузить ночную версию сборки