nl_tokens: The authenticate function is called whenever ZAP requires to authenticate for a Context for which this script was selected as the Authentication Method . The function should send any messages that are required to do the authentication and should return a message with an authenticated response so the calling method . NOTE : Any message sent in the function should be obtained using the helper . prepareMessage () method . Parameters : helper - a helper class providing useful methods : prepareMessage () sendAndReceive ( msg ) getHttpSender () paramsValues - the values of the parameters configured in the Session Properties - > Authentication panel . The paramsValues is a map having as keys the parameters names ( as returned by the getRequiredParamsNames () and getOptionalParamsNames () functions below ) credentials - an object containing the credentials values as configured in the Session Properties - > Users panel . The credential values can be obtained via calls to the getParam ( paramName ) method . The param names are the ones returned by the getCredentialsParamsNames () below
pl_tokens: function authenticate ( helper , paramsValues , credentials ) { print ( "Authenticating via JavaScript script..." ) ; var msg = helper . prepareMessage ( ) ; // TODO: Process message to match the authentication needs // Configurations on how the messages are sent/handled: // Set to follow redirects when sending messages (default is false). // helper.getHttpSender().setFollowRedirect(true) // Send message without following redirects (overriding the option previously set). // helper.sendAndReceive(msg, false) // Set the number of maximum redirects followed to 5 (default is 100). Main purpose is to prevent infinite loops. // helper.getHttpSender().setMaxRedirects(5) // Allow circular redirects (default is not allow). Circular redirects happen when a request // redirects to itself, or when a same request was already accessed in a chain of redirects. // helper.getHttpSender().setAllowCircularRedirects(true) helper . sendAndReceive ( msg ) ; return <mask> ; }