Кто-нибудь успешно прошел проверку подлинности с помощью Jmeter в Windows ADFS / SSO, используя SPNEGO (Negotiate) и Kerberos? - PullRequest
0 голосов
/ 11 февраля 2019

В качестве альтернативы кто-нибудь определил, что это невозможно или не работает?

Я пытаюсь использовать Jmeter для загрузки теста сайта, который использует OKTA Oauth2 для авторизации, но использует ADFS / SSO для аутентификации.Похоже, что схема аутентификации SPNEGO с KERBEROS, которая должна поддерживаться HttpClient.У меня нет проблем с частью OKTA, но я не могу заставить Jmeter проходить аутентификацию на сервере SSO.

У меня есть менеджер файлов cookie HTTP, а также менеджер заголовков HTTP, который имеет некоторые общие значения заголовка запроса.Я использую отдельный менеджер заголовков HTTP с сэмплерами запросов HTTP, когда требуются дополнительные значения заголовка запроса.Нет проблем с построением заголовков запросов (с одним исключением, отмеченным на шаге 6 ниже), и куки-файлы обрабатываются правильно.Я использую реализацию HttpClient4 по умолчанию для сэмплера HTTP Request.Я использую диспетчер авторизации HTTP только там, где указано ниже.Наша команда безопасности предоставила имя пользователя и пароль, а также соответствующую таблицу ключей, а также серверы области, домена, KDC и Admin.krb5.conf и jaas.conf настроены и указано их местоположение.Я не получаю никаких исключений Java.

Jmeter log extract:
            DEBUG o.a.h.i.c.TargetAuthenticationStrategy: Authentication schemes in the order of preference: [Negotiate, Kerberos, NTLM, CredSSP, Digest, Basic]
        DEBUG o.a.h.i.c.TargetAuthenticationStrategy: Challenge for Kerberos authentication scheme not available
        DEBUG o.a.h.i.c.TargetAuthenticationStrategy: Challenge for CredSSP authentication scheme not available
        DEBUG o.a.h.i.c.TargetAuthenticationStrategy: Challenge for Digest authentication scheme 

Проблема заключается в том, что Jmeter не отвечает ни на одну из задач сервера для выполнения процесса многоэтапной аутентификации.

1 Ответ

0 голосов
/ 12 февраля 2019

Это не должно быть проблемой при условии правильной конфигурации.Применяется то же правило, что и при обычном нагрузочном тестировании: JMeter должен отправлять тот же шаблон сетевого трафика, что и настоящий браузер.Вы можете проверить это дважды, используя инструмент-сниффер, например Wireshark .

Проверьте, установлены ли следующие Свойства JMeter, связанные с Kerberos в user.properties file:

kerberos.spnego.delegate_cred=true
kerberos.spnego.strip_port=false
kerberos_jaas_application=name_of_your_application_from_the_jaas_conf

И на всякий случай добавьтеследующая строка system.properties file:

sun.security.krb5.debug=true

Ссылки:

...