Go v5 configuration options
Each Enforcer has a set of configuration options that control the Enforcer’s functionality and features. While some are required, many of these are optional configurations that you can use to customize the Enforcer’s behavior. You can reference available configurations with this article. Define these options in application code with perimeterx.BuildconfigParams or perimeterx.NewconfigParamsBuilder, or in a JSON file loaded with perimeterx.GetconfigParamsFromJson.
While all Enforcers come with the same set of required configurations, the optional configurations available for each may differ. We recommend updating to the latest Enforcer version to ensure you have access to the latest features and configurations.
The Go Enforcer reads these options from a ConfigParams value. Build it in one of three ways:
- Builder: Call
perimeterx.NewconfigParamsBuilderwithpx_app_id,px_auth_token, andpx_cookie_secret. Set every other option with the builder’sSet*methods, then callBuild(). Note that some method names differ from the correspondingpx_*key. - JSON: Store the
px_*keys in a JSON file and load it withperimeterx.GetconfigParamsFromJson. - Directly: Pass a
map[string]interface{}ofpx_*keys toperimeterx.BuildconfigParams.
ConfigParams with one of these three methods. A struct literal skips the defaults the builder applies.Quick reference
Basic functionality configurations
Basic feature configurations
Optional configurations
Required configurations
These configurations are necessary for the Enforcer’s basic functionality and features.
Basic functionality configurations
px_app_id
Your HUMAN Application ID in the form of PX12AB34CD. You can copy this value from the HUMAN Console in Platform Settings > Applications Overview. If you have multiple applications, make sure to copy the ID of the application you want the Enforcer on.
px_auth_token
The application’s server token needed to authorize with HUMAN’s backend. You can copy this value from the HUMAN Console in Platform Settings > Applications Overview > Click the appropriate application > Server token tab.
px_cookie_secret
The secret used to encrypt and decrypt the risk cookie sent from the HUMAN Sensor. You can copy this value from the HUMAN Console in Sightline Cyberfraud Defense > Traffic Policy Overview > Click the appropriate application > Click the key > Copy value.
px_backend_url
Do not set this value unless directed by your HUMAN Solutions Engineer.
The base URL for the HUMAN SAPI (Risk API and related calls). If empty, the Enforcer uses the default host for your Application ID.
px_backend_collector_url
Do not set this value unless directed by your HUMAN Solutions Engineer.
The base URL for first-party XHR proxying and for the collector URL included on the block page. Async activities are sent to px_backend_url. If unset, the Enforcer uses https://collector-<APP_ID>.perimeterx.net.
px_s2s_timeout
The total time in milliseconds that the Enforcer will wait for the Risk API request to return before timing out and passing the request.
px_activities_timeout
The total time in milliseconds that the Enforcer will wait for an activity request to return.
px_blocking_score
The minimum risk score that the Enforcer will block. Ranges from 0 (lowest risk) to 100 (highest risk).
Basic feature configurations
px_logger_severity
The severity at which the logger will output logs.
none: The logger will not generate any logs.error: The logger will only generate logs on fatal errors.debug: The logger will generate detailed logs for debugging purposes. Not recommended for production environments.
See px_logger_auth_token for a header-based alternative.
px_ip_headers
An array of header names that are trusted to contain the true client IP. Headers are traversed in the order they’re listed, and the first header value will always be used as the client IP.
The first non-empty value is used when it is a valid IP address. Otherwise, the Enforcer uses the connection’s remote address.
px_module_enabled
Whether the Enforcer module is enabled.
true: Enable the modulefalse: Disable the module
px_module_mode
The Enforcer’s operation mode.
monitor: The Enforcer performs all functions without returning block responses. Useful for analyzing and adjusting Enforcer behavior without serving block pages to end users. If you have routes that must have enforcement at all times, see Enforced routes.active_blocking: The Enforcer will return block responses as needed.
px_send_page_activities
Whether the Enforcer sends a page_requested activity for requests that aren’t blocked. Disabling this feature prevents HUMAN from receiving the request data that populates the portal, including how many requests were processed.
px_send_block_activities
Whether the Enforcer sends a block activity when a request is blocked. Disabling this feature prevents HUMAN from receiving block metrics.
Optional configurations
These configurations aren’t required, but you can use them to further customize the Enforcer’s behavior.
Additional activity handler
px_additional_activity_handler
A custom function passed to the Enforcer that runs after sending page_requested or block activity to the Collector and before forwarding the request to the next step in the pipeline. A common use case is to set the score as a variable or header. Then the application can read the score and do what is defined within the application’s logic.
Parameters:
config:perimeterx.ConfigParamscontext:*perimeterx.PxContextrequest:*http.Request
This function is not called when px_custom_verification_handler is set.
Advanced blocking response (ABR)
px_advanced_blocking_response_enabled
In specific cases such as XHR post requests, a full CAPTCHA page render might not be an option. In such cases, the Advanced Blocking Response (ABR) returns a JSON object containing all the information needed to render a customized CAPTCHA challenge implementation such as a popup modal, a section on the page, etc. This provides more flexibility and customizability in displaying the CAPTCHA challenge.
true: Enable ABRfalse: Disable ABR
Block invalid cookie
px_block_invalid_cookie
When set to true, the Enforcer does not call the Risk API when cookie decryption or validation fails. Instead, it blocks the request immediately.
Bypass monitor header
px_bypass_monitor_header
Activates the full blocking flow to verify the flow works as expected if the specified header is present on the request with a value of 1. Often used to test the Enforcer block workflow during monitor mode, where the Enforcer usually collects data without blocking user requests, before switching to active_blocking. Requests with this header will go through the entire blocking workflow despite being in monitor mode.
To disable blocking behavior on the specified header, set the value to 0.
Credentials Intelligence
These configurations let you extract and detect compromised credentials. They’re closely related to Credentials Intelligence-related features in Sightline Cyberfraud Defense.
At minimum, ensure the following are configured to enable Credential Intelligence:
px_login_credentials_extraction_enabledis set totruepx_login_credentials_extractionis configured with at least one credential endpointpx_login_successful_reporting_methodis set andCreateDefaultHumanSecurityMiddlewareis used, or a custom middleware callsPostEnforcewith aperimeterx.ResponseWriterWrapper.
px_login_credentials_extraction_enabled
Whether to enable the extraction and reporting of credentials from the Enforcer for Credential Intelligence.
true: Enable Credential Intelligencefalse: Disable Credential Intelligence
px_login_credentials_extraction
An array of configuration objects for each credential endpoint. Each element in the array is an object representing a distinct endpoint to which credentials are sent and includes:
- How to identify these credential-bearing requests
- How to extract the credentials from the request
Login success is configured once for the Enforcer with px_login_successful_reporting_method. To extract credentials with your own function for every request, use px_custom_credentials_extractor instead of this array.
Properties
path
The path of the request that contains the credentials. See path_type for how this value is compared with the request path.
path_type
Whether the incoming request path is compared with path as an exact string or as a regular expression.
exact: The request path must equalpath.regex: The request path is used as the regular expression and is tested againstpath. The comparison is case-sensitive.
method
The HTTP method of the request that contains the credentials. Accepted values are post, put, and get.
sent_through
Where the credentials are read from.
"body": The credentials are extracted according touser_fieldandpass_fieldfrom the request body. The Enforcer parses the body based on theContent-Typerequest header:application/jsonapplication/x-www-form-urlencodedmultipart/form-data
"header": The credentials are extracted according touser_fieldandpass_fieldfrom the request headers."query-param": The credentials are extracted according touser_fieldandpass_fieldfrom the request query parameters.
Use px_custom_credentials_extractor when credentials are not in one of these locations.
user_field
Required if sent_through is set to "body", "header", or "query-param". The name of the field containing the username in the request body, headers, or query parameters.
Supports subfields in cases of Content-Type: application/json bodies with nested objects. The subfields can be separated with periods. For example, the credential endpoint configuration object can include a user_field with the value "user_info.username" and a pass_field with the value "authentication.password" to support extracting the credentials.
This field is optional. When it is omitted, the Enforcer uses username.
pass_field
Required if sent_through is set to "body", "header", or "query-param". The name of the field, header name, or query parameter where the password can be found.
Supports subfields in cases of Content-Type: application/json bodies with nested objects. The subfields can be separated with periods. For example, the credential endpoint configuration object can include a user_field with the value "user_info.username" and a pass_field with the value "authentication.password" to support extracting the credentials.
This field is optional. When it is omitted, the Enforcer uses password.
px_credentials_intelligence_version
The credential hashing protocol for every configured credential endpoint. Credential Intelligence runs when the username, the password, or both are extracted.
"v2": The username and password from the same request are hashed together."multistep_sso": A non-empty password is reported as the password step. Otherwise a non-empty username is reported as the username step.
px_compromised_credentials_header
The header name to be set on the incoming request if the credentials are compromised. If this header is added, its value will always be 1. If credentials have not been identified as compromised, the header will not be added to the request.
px_additional_s2s_activity_header_enabled
Whether to attach the additional_s2s payload and URL as headers to the original request. This is done so that the additional_s2s activity can be enriched with the proper login_successful value and sent to the provided URL at a later stage. Enabling this configuration disables automatic sending of additional_s2s activity.
When set to true, the following headers are added to the origin request:
px-additional-activity: A JSON object containing the payload of theadditional_s2sactivity. Thelogin_successfulandhttp_status_codefields should be set prior to sending the activity.px-additional-activity-url: The URL to which theadditional_s2spayload should be sent as an HTTP POST request.
px_send_raw_username_on_additional_s2s_activity
Whether to report the raw username on the additional_s2s activity.
false: The raw username is not reported.true: The raw username is reported.
px_login_successful_reporting_method
How the Enforcer decides that a login succeeded. This method applies to every credential endpoint. Set it when Credential Intelligence is enabled. If it is unset, login success is not reported on the additional_s2s activity.
CreateDefaultHumanSecurityMiddleware wraps the handler’s http.ResponseWriter and calls PostEnforce after the handler returns. That call reads the response and reports login success. A custom middleware must pass a perimeterx.ResponseWriterWrapper into the handler, then call PostEnforce with that wrapper, the enforcement context, and the Runtime.
"status": The login is successful when the response status is one ofpx_login_successful_status."body": The login is successful when the response body matchespx_login_successful_body_regex."header": The login is successful when the response containspx_login_successful_header_namewith the valuepx_login_successful_header_value."custom": The login is successful whenpx_custom_login_response_validationreturnstrue.
px_login_successful_status
The default HTTP status codes that indicate a successful login. This takes effect when the px_login_successful_reporting_method is set to status.
Each value is an exact status code. To treat a range of codes as success, use px_custom_login_response_validation with px_login_successful_reporting_method set to custom.
px_login_successful_body_regex
The default body regular expression that indicates a successful login. This takes effect when the px_login_successful_reporting_method is set to body.
px_login_successful_header_name
The default response header name that indicates a successful login. This takes effect when the px_login_successful_reporting_method is set to header.
px_login_successful_header_value
The default response header value that indicates a successful login. This takes effect when the px_login_successful_reporting_method is set to header.
px_custom_credentials_extractor
A custom function that extracts credentials from the request. When this function is set, the Enforcer uses it instead of px_login_credentials_extraction.
The function signature is func(*perimeterx.RequestWrapper) *perimeterx.LoginCredentials. Return the extracted username and password, or nil when extraction is unsuccessful.
px_custom_login_response_validation
A custom implementation of perimeterx.LoginResponseValidator. The Enforcer calls IsSuccessfulLogin when px_login_successful_reporting_method is custom.
IsSuccessfulLogin receives the perimeterx.ResponseWriterWrapper passed to PostEnforce and returns whether the login succeeded. Response headers are available from Header().
CORS support
You can configure the Enforcer to support Cross-Origin Resource Sharing (CORS) requests. CORS is a mechanism that lets the server indicate if a request contains cross-origin resources by adding special HTTP headers to the request. These headers let the browser load these resources. Without them, the browser may block requests to these resources for security reasons instead.
In most cases, CORS employs a two-stage procedure with a preliminary “preflight” request followed by the actual request. The preflight request checks if the actual request will be responded to. To learn more about different request types, see these examples.
You must configure the Enforcer to address both simple requests (without preflight) and more complex ones (with preflight) to support CORS requests.
px_cors_support_enabled
Whether to enable CORS support.
true: Enable CORS supportfalse: Disable CORS support
After setting this configuration to true, the Enforcer:
- Automatically adds the following default CORS response headers to block responses resulting from CORS requests.
- Activates the
px_cors_create_custom_block_response_headersconfiguration, which lets you customize the block response headers via a custom function. - Activates the
px_cors_preflight_request_filter_enabledandpx_cors_custom_preflight_handlerconfigurations, which lets you filter and custom handle preflight requests.
px_cors_create_custom_block_response_headers
If the default CORS response headers are not sufficient, you can use this configuration to customize the headers that should be added to all block responses resulting from CORS requests. If this function is defined, the default headers will not be added. Only those headers specified in the returned object will be added to the block response.
Parameters:
request:*http.Request
The Go function also receives *perimeterx.PxContext.
px_cors_preflight_request_filter_enabled
Disables enforcement for CORS preflight requests. When set to true, CORS preflight requests will be pass through the Enforcer flow without triggering detection or block responses.
true: Filter out preflight requestsfalse: Don’t filter out preflight requests
px_cors_custom_preflight_handler
A custom function to define desired behavior for handling CORS preflight requests, if needed. The custom function should receive the original HTTP request and return an object representing the HTTP response to be returned. If null or any other falsy value is returned from the function, the Enforcer will continue processing the preflight request.
The px_cors_custom_preflight_handler will be invoked prior to determining whether to filter the request based on the px_cors_preflight_request_filter_enabled configuration. This allows for returning customized responses for preflight requests that meet certain conditions and filtering those that don’t meet these conditions.
Parameters:
request:*http.Request
Custom cookie header
px_custom_cookie_header
By default, the Enforcer extracts HUMAN cookies from the Cookie header. However, if these cookies are transferred on a different header, then that header’s name must be provided with this configuration.
Custom first party endpoints
These configurations let you use the Enforcer as a proxy for HUMAN servers and serve content to the browser from a first party endpoint. These are particularly useful when browser or extension restrictions that block JavaScript requests to other domains, such as adblockers, prevent the HUMAN Sensor from making requests to HUMAN’s backend. When this happens, it significantly limits HUMAN’s detection capabilities, so we recommend enabling these configurations to maintain full detection capabilities.
px_first_party_enabled
Whether to enable first party mode for Bot Defender or Sightline Cyberfraud Defense.
px_first_party_xhr_enabled
Whether first party XHR requests are proxied to the Collector. When this is false, or when px_first_party_enabled is false, requests to the first party XHR path receive an empty JSON body or, if the path ends in gif, an empty GIF, and are not forwarded.
px_first_party_timeout_ms
The maximum time in milliseconds to wait for first party requests.
The checkpoint script uses px_activities_timeout instead.
Custom parameters
These configurations are related to custom parameters.
px_enrich_custom_parameters
Enriches activities sent from the Enforcer to HUMAN with additional custom parameters. This data can include user information, session IDs, or other data that HUMAN should have access to. The function receives an empty parameters map and the incoming request, and must return the parameters map. The Enforcer sends custom_param1 through custom_param10.
Parameters:
customParams:map[string]interface{}request:*http.Request
Returns: map[string]interface{}
Custom verification handler
px_custom_verification_handler
A custom function that replaces the default block response. When this function is set, the Enforcer returns its result and does not render the default block page. Return an *http.Response to block the request, or nil to allow it. The additional activity handler is not called.
Parameters:
config:perimeterx.ConfigParamscontext:*perimeterx.PxContextrequest:*http.Request
Returns: *http.Response
Enforced routes
These configurations let you define specific routes that should be enforced by HUMAN when the Enforcer is in monitor mode. These routes will always be subject to the full Enforcer workflow, including blocking requests if necessary.
Primitive string values are treated as path prefixes. For example, /login also matches /login/callback.
px_enforced_routes
Routes or prefixes that should be enforced by HUMAN even when the Enforcer is in monitor mode.
px_enforced_routes_regex
Regular expressions for routes that are enforced even when px_module_mode is monitor. Each value is matched against the URL path.
Filters
These configurations let you filter out certain requests or assets from the Enforcer. These values will be ignored by the Enforcer and will never be blocked.
px_filter_by_extension
Filters out requests whose path ends with one of the specified file extensions. By default, HUMAN doesn’t enforce static assets such as images and documents to minimize unnecessary API calls and computation, but you can configure this list at any time.
The comparison uses the path as received. See px_matrix_params_enabled to strip semicolon matrix parameters before the comparison.
px_matrix_params_enabled
Whether the Enforcer removes semicolon matrix parameters from each path segment before comparing the path with px_filter_by_extension.
When this is false, a path is filtered when it ends with a configured extension. /assets/app.js;v=2 is not filtered, because it does not end in .js, and /admin/delete-user;.js is filtered, because it ends in .js.
When this is true, matrix parameters are removed first. /assets/app.js;v=2 is filtered as /assets/app.js, and /admin/delete-user;.js is not filtered, because the path is /admin/delete-user.
px_filter_by_http_method
Filters out requests with the specified HTTP method to avoid unnecessary traffic in the Enforcer verification flow.
px_filter_by_ip
Filters out requests with the specified IP address to avoid unnecessary traffic in the Enforcer verification flow.
Each entry can be a single IP address or a CIDR range, such as 21.0.0.0/8.
px_filter_by_route
Filters out requests with the specified route to avoid unnecessary traffic in the Enforcer verification flow. Requests to these specified routes will never be blocked regardless of their risk score and will never generate risk or async activities. Primitive string values are treated as path prefixes. For example, /login also matches /login/callback.
px_filter_by_route_regex
Regular expressions for routes that should be filtered to avoid unnecessary traffic in the Enforcer verification flow. Requests to these specified routes will never be blocked regardless of their risk score and will never generate risk or async activities.
px_filter_by_user_agent
Filters out requests with the specified user agent to avoid unnecessary traffic in the Enforcer verification flow. Each value must match the full user agent. The comparison is case-insensitive.
GraphQL support
These configurations let the Enforcer extract GraphQL data from requests so that it can enforce these requests in the same way as other types of traffic.
px_graphql_enabled
Whether to parse and report information about GraphQL operations on incoming requests. When true, requests whose path matches px_graphql_routes have their JSON bodies parsed for GraphQL operations.
px_graphql_routes
A list of regex routes that should be considered GraphQL routes. If a request’s route matches any of the regexes in this list, HUMAN checks for sensitive GraphQL operations as specified in px_sensitive_graphql_operation_names and px_sensitive_graphql_operation_types.
Each value is compiled as a regular expression.
px_sensitive_graphql_operation_names
A list of operation names that should be considered sensitive. Some routes may be more prone to bot attacks than others, such as routes that execute payments or handle personal information. You can configure these routes as sensitive to ensure a more stringent protection.
If one or more GraphQL operations has a name or keyword matching this list, the Enforcer will trigger a Risk API call even if the request contains a valid, unexpired cookie. Matches against extracted GraphQL words from:
px_graphql_keywordsconfigurationpx_extract_graphql_keywordsconfiguration
Names are matched exactly. Use px_sensitive_graphql_operation_names_regex for regular expressions.
px_sensitive_graphql_operation_names_regex
A list of regular expressions for GraphQL operation names that should be considered sensitive. The Enforcer uses these expressions when px_sensitive_graphql_operation_names is unset, and it also tests extracted GraphQL keywords against them. A match triggers a Risk API call even if the request contains a valid, unexpired cookie.
px_sensitive_graphql_operation_types
A list of operation types that should be considered sensitive. Some routes may be more prone to bot attacks than others, such as routes that execute payments or handle personal information. You can configure these routes as sensitive to ensure a more stringent protection.
If one or more GraphQL operations on an HTTP request has a type matching this list, the Enforcer will trigger a Risk API call even if the request contains a valid, unexpired cookie.
px_graphql_keywords
A list of regular expressions of keywords to identify important terms from GraphQL operation queries. These keywords are used to determine the purpose of the operation (such as login, checkout, or search) and can also be used to specify which operations should be considered sensitive. Any matching patterns will be extracted and reported to HUMAN. See px_sensitive_graphql_operation_names for more information. See px_extract_graphql_keywords for an alternative using a custom function.
Each value is compiled as a regular expression and matched against the GraphQL query.
px_extract_graphql_keywords
A custom function that identifies key terms from GraphQL operation queries. When this function is set, the Enforcer uses its return value and does not evaluate px_graphql_keywords.
This function accepts the GraphQL query string and must return the keywords found in the query. These keywords are used to determine the purpose of the operation (such as login, checkout, or search) and can also be used to specify which GraphQL operations should be considered sensitive. See px_sensitive_graphql_operation_names for more information.
Parameters:
query:string
Returns: []string
HUMAN Challenge and hard block customization
These configurations let you customize the HUMAN Challenge block page as well as the hard block page, which appears when a request is blocked without a Challenge. Hard block pages inherit the same styling as the HUMAN Challenge according to the following configurations and cannot be customized separately.
px_css_ref
A way to include a custom CSS file to the block page.
Maps to {{cssRef}} in the hard block page template.
px_js_ref
A way to include custom JavaScript to the block page. This script will run after the default JavaScript scripts.
Maps to {{jsRef}} in the hard block page template.
px_custom_logo
Adds a custom logo to the HUMAN Challenge block page via URL.
Maps to {{customLogo}} in the hard block page template.
Monitored routes
These configurations let you specify routes that should be monitored by the Enforcer, which means their requests will never be blocked, even when the Enforcer is in active_blocking mode. This means that these routes will go through the full Enforcer workflow and generate risk and async activities, but all block activities will only be simulated blocks on these routes.
Primitive string values are treated as path prefixes. For example, /login also matches /login/callback.
px_monitored_routes
A list of endpoints to be monitored rather than blocked by the Enforcer, even when the Enforcer is in active_blocking mode.
Values are path prefixes. /preview also matches /preview/draft.
px_monitored_routes_regex
Regular expressions for routes that should be treated as monitored even when the Enforcer is in active_blocking mode.
px_custom_is_monitored_request
This configuration is meant for cases that require more complex logic. We recommended you use px_monitored_routes for most cases.
A custom function that lets you define which endpoints should be monitored based on custom logic such as a header, HTTP method, or user agent. It accepts the incoming request as an argument and returns true when the request should be monitored.
Parameters:
request:*http.Request
This function is only called when the module mode is in active_blocking, the bypass monitor header isn’t present, and there are no matching monitored routes. If the function panics, the request is treated as not monitored.
Remote Configuration
Remote Configuration lets you update your Enforcer’s configuration from the HUMAN portal rather than interacting with the Enforcer package directly.
px_logger_auth_token
An alternative to the basic logger configuration. This sends Enforcer logs to HUMAN’s logging service if a specific header is present on the request. This is particularly useful for expedited debugging, diagnosis, and resolution of any integration or Enforcer-related issues.
Contact HUMAN to receive your token.
px_remote_config_enabled
Whether enforcement uses the configuration returned by Remote Configuration. When this is false, the Enforcer keeps using the configuration you set at startup. Set this to true together with px_remote_config_id and px_remote_config_auth_token.
px_remote_config_auth_token
The token used to authenticate the Enforcer with the HUMAN Remote Configuration service.
Contact HUMAN to receive your token.
px_remote_config_id
px_remote_config_timeout
The amount of time, in milliseconds, to wait for a Remote Configuration request.
px_remote_config_max_age_seconds
The maximum length of time, in seconds, between requests to update the Remote Configuration.
Sensitive headers removal
px_sensitive_headers
Specifies certain headers that should not be forwarded to any other destination, including the HUMAN Detector. While HUMAN’s detection system will continue to use these headers to determine whether to block or not, the specified headers won’t be forwarded from the Enforcer, won’t appear in Enforcer activities, and won’t be sent to any other IP if the Enforcer acts as a proxy.
The application still receives these headers. The Enforcer omits them from requests it sends to HUMAN and from first-party proxy requests.
Sensitive routes
These configurations let you specify certain routes that need particularly stringent protection from attacks, such as endpoints that execute payments or handle personal information. Sensitive routes will always trigger a Risk API call even if the request contains a valid, unexpired, low-score cookie.
Primitive string values are treated as path prefixes. For example, /login also matches /login/callback.
Requests with high-score cookies won’t send a Risk API call.
px_sensitive_routes
A list of prefixes for all routes that should be considered sensitive.
px_sensitive_routes_regex
A list of regular expressions for all routes that should be considered sensitive.
px_custom_is_sensitive_request
This configuration is meant for cases that require more complex logic. We recommended you use px_sensitive_routes for most cases.
A custom function that lets you define which requests should be considered sensitive based on custom logic. It accepts the incoming request as an argument and returns a boolean indicating whether the request should be considered sensitive.
Parameters:
request:*http.Request
A panic inside this function is recovered and treated as false.
Users identifiers
These configurations let you extract user identifiers from a JWT carried on the request either in a cookie or a header. They’re closely related to the Accounts and Account Takeover or Fake Account features in Sightline Cyberfraud Defense.
The Enforcer reads the JWT from the configured cookie first, then from the configured header if cookie extraction does not succeed. Field names support dot notation for nested JWT claim (for example, product.id).
px_jwt_cookie_name
The name of the cookie that contains the JWT token that HUMAN should extract user identifiers from.
px_jwt_cookie_user_id_field_name
The field name in the JWT object, extracted from the JWT cookie, that contains the user ID to be extracted and reported.
px_jwt_cookie_additional_field_names
The field names in the JWT object, extracted from the JWT cookie, that should be extracted and reported in addition to the user ID.
px_jwt_header_name
The name of the header that contains the JWT token that HUMAN should extract user identifiers from.
px_jwt_header_user_id_field_name
The field name in the JWT object, extracted from the JWT header, that contains the user ID to be extracted and reported.
px_jwt_header_additional_field_names
The field names in the JWT object, extracted from the JWT header, that should be extracted and reported in addition to the user ID.