All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Added
risk_start_time
andenforcer_start_time
fields to enforcer activities. - Added
failOnEmptyBody
flag forcallServer
to specify weather or not a request should fail if it has no body. - Updated the configuration of PX first-party requests to include a connection timeout
- Updated the captcha template to handle empty captcha responses
- Custom cookie header is processed in addition to (not instead of) default cookie header
- Custom cookie header default value has been set to x-px-cookies
- Added PXHD from risk response to the async activities
- None
- Support for handling graphQL requests with empty query field
- Support custom is sensitive request via function
- Support for CORS preflight requests and CORS headers in block responses
- Support User Identifiers: CTS and JWT.
- using perimeterx node core 3.7.0
- pxhd cookie is now set with SameSite=Lax
- Update block page to support error handling for mobile.
- Support for credentials intelligence v2 hashing protocol added and set as default
- New block page implementation
- Support for dynamic cookie signing with IP (requires PXHD)
- Send PX cookie over risk_api on sensitive routes
- Send PX cookie over risk_api on sensitive routes
- Support for credentials intelligence protocols
v1
andmultistep_sso
- Support for login successful reporting methods
header
,status
,body
, andcustom
- Support for automatic sending of
additional_s2s
activity - Support for manual sending of
additional_s2s
activity via header or API call - Support for sending raw username on
additional_s2s
activity - Support for login credentials extraction via custom callback
- New
request_id
field to all enforcer activities
- Login credentials extraction handles body encoding based on
Content-Type
request header - Successful login credentials extraction automatically triggers risk_api call without needing to enable sensitive routes
- Enforced routes work in monitor mode
- Bypass monitor header works with configured monitored routes
- Code Defender first party XHR and first party Sensor support
- Nonce support in CSP header
- Compromised credentials header support
- Configuration fields update (PerimeterX Node Core v3.0.0)
- Cookie decryption fails on mobile sdk error
- New middleware for Code Defender (cdMiddleware) to support CSP enforcement
- Support for regular expressions in filter by user agent
- Support for
customCookieHeader
. - Support for custom log.
- Support for
ACTIVITIES_TIMEOUT_MS
.
- New config to support
Secure
flag for pxhd cookie
- Custom parameters for async activities.
- Support for
originalRequest
inenrichCustomParameters
.
- Support for filtering traffic by http method
- Support for regex in enforced/whitelisted/monitored specific routes.
- Support for filtering traffic by IPs/CIDRs.
- Support for filtering traffic by user agents.
- cssRef, jsRef to accept string values
- Send HTTP method on async activities
- Support for specific enforced routes and specific monitored routes
- Upgraded dependency
- Dependency upgrading
- send telemetry by command
- timeout error handling for api calls
- pxConfig setting for proxy
- Risk API timeout check
- Support for loading configuration from a file.
- Advanced Blocking Response
- Updated perimeterx-node-core dependency to version ~2.1.0.
- Support multiple instances of the enforcer using the
new
method.
- PxClient now requires a config as an argument for the init function.
- Updated perimeterx-node-core dependency to version ~2.0.0.
- Support for testing blocking flow in monitor mode
- Full refactor of proxy support
- Lowercasing of json response
- Various PXHD related issues
- Breaking Change: Dropped support for NodeJS 6.x
- Added PXHD handling
- Added async custom params
- Added data enrichment cookie handling
- Added Proxy support
- px_cookie_hmac was missing from risk api calls
- First party captcha fallback
- Configurable testing mode
- New call reason 'no_cookie_key'
- Updated dev dependencies
- Various fixes for request module and error handling
- Refactored request module
- Added support for Advanced Blocking Response
- Not returning response on error
- Updated required core package version
- Stability related fixes
- First party support
- Restructured code to use shared core package
- Enhanced module logs
- Mobile SDK support
- Remote configurations
- Enforcer telemetry
- Support FunCaptcha
- New configuration - moduleMode
- Support for cookie v3 & risk v2
- Sending orig_px_cookie when decrypt fails
- Added support JS challenge
- Sensitive routes, triggers risk_api
- Sending px cookie on page requested activities
- Redesigned block pages
- Change perimeterx servers url to be per app id
- Page UUID added to Risk API requests
- Cookie to store page UUID
1.6.3 - 2016-09-20
- Module version added to risk calls.
- Cookie value when relevant.
- HTTP-VERSION & HTTP-METHOD into Server to Server queries.
- License file.
- VID to server activities.
- Filter seneitive headers.
- Configuration unit tests.
- Extract visitor IP by function.
- Remastered context object.
- Changed logo image.
- Upgraded ExpressJS.
- Server to Server - new Enums.
- Collector URL change to sapi.net
- Stopped sending page_requested activities for risk_api calls.
- Block page URI display.
- User IP and custom block handler.
1.4 - 2016-05-29
- CAPTCHA Configurable.
- VID to risk requests.
- CAPTCHA util to make captcha validation call with PerimeterX servers.
- Support for vid cookie signing.
- VID as part of cookie signing.
- Refactored HTTP client to use single client for all type of calls.
- Missing URI on incoming requests.
- Keep-Alive agent to work with local tests.
- Format invalid cookie error to be printed correctly.
- Missing agent referer.