Когда выполняется метод extractWebSession в скрипте управления сеансом ZAP - PullRequest
0 голосов
/ 14 июля 2020

Я играю со скриптом управления сеансом ZAP и скриптом селена для магазина соков. Я не понимаю, в какой момент выполняется метод ниже!

function extractWebSession(sessionWrapper) {
   // parse the authentication response
   var json = JSON.parse(sessionWrapper.getHttpMessage().getResponseBody().toString());
   var token = json.authentication.token;
   // save the authentication token
   sessionWrapper.getSession().setValue("token", token);
}

Первоначально я не сохранял токен как глобальную переменную в extractWebSession. Позже я добавил сценарий селена для ввода токена в хранилище сеанса, а в метод extractWebSession добавил строку для хранения токена как GlobalVar. Когда я открываю браузер из ZAP, так как extractWebSession больше не запускается, сценарий selenium не может установить токен в хранилище сеанса.

Я вызвал браузер из ZAP и вошел в систему вручную, чтобы увидеть, выполняется ли этот метод, но не повезло. Я думал, что этот метод должен выполняться каждый раз, когда есть вызов api, помеченный как запрос авторизации (https://.../rest/user/login)! Будет ли этот метод вызываться только один раз за сеанс zap?

Может ли кто-нибудь сообщить мне, когда ZAP вызовет метод extractWebSession?

1 Ответ

0 голосов
/ 15 июля 2020

Автоматическая аутентификация ZAP выполняется по умолчанию только при запуске таких инструментов, как «пауки» или активное сканирование от имени конкретного c пользователя. Однако вы можете принудительно использовать его, если используете принудительный режим пользователя.

Я подробно рассмотрю аутентификацию с помощью Juice Sjop в видеороликах ADDO Workshop на https://www.alldaydevops.com/zap-in-ten

...