This Node.js service acts as a reverse proxy for Kibana, enforcing authentication and access control based on specific rules. It validates requests using DIGIT’s authentication API.The service utilizes express, express-http-proxy, and axios for proxying and API interaction.
The service relies on environment variables defined in envVariables for key configuration. These variables include:
These configurations can be overridden by environment variables, and they include:
SERVER_PORT: The port on which the Node.js service will run.
EGOV_USER_HOST and EGOV_USER_SEARCH: The host and path for the external authentication API.
KIBANA_HOST and KIBANA_BASE_PATH: The Kibana server URL and base path.
KIBANA_ACCEPTED_CONTEXT_UI_PATHS: List of valid context paths for referer validation.
KIBANA_ACCEPTED_DOMAIN_NAME: Domain name allowed for Kibana access.
KIBANA_EXCLUDE_URL_PATTERNS: URL patterns excluded from authentication.
Auth-Proxy : auth-proxy-urlencoded-fix-aad9a5959c-23