Zscaler Internet Access Using URL Categories

Zscaler Internet Access Using URL Categories

WitnessAI Documentation
List
Start Here
Home
Discovery
Analytics
Conversations
Users
Alerts
Policy
Administration
Apps & Resources
Tutorials
Release Notes
Release Notes
November 3, 2026 WitnessAI Release
October 27, 2026 WitnessAI Release
October 20, 2026: WitnessAI Release
October 13, 2026: WitnessAI Release
September 29, 2026: WitnessAI Release
September 22, 2026: WitnessAI Release
September 15, 2026: WitnessAI Release
September 8, 2026: WitnessAI Release
September 1, 2026: WitnessAI Release
August 25, 2026: WitnessAI Release
August 18, 2026 WitnessAI Release
August 4, 2026 WitnessAI Release
July 21, 2026 WitnessAI Release
July 14, 2026 WitnessAI Release
July 9, 2026 WitnessAI Release
June 30, 2026 WitnessAI Hotfix
June 23, 2026 WitnessAI Release
June 16, 2026 WitnessAI Release
June 11, 2026 WitnessAI Release
June 4, 2026 WitnessAI Hotfix
June 2, 2026 WitnessAI Update
May 19, 2026 WitnessAI Update
April 30, 2026 WitnessAI Update
April 28, 2026 WitnessAI Update
April 23, 2026 WitnessAI Update
April 16, 2026 WitnessAI Update
April 14, 2026 WitnessAI Update
April 9, 2026 WitnessAI Update
April 2, 2026 WitnessAI Update
March 31, 2026 WitnessAI Update
March 24, 2026 WitnessAI Update
March 19, 2026 WitnessAI Update
March 17, 2026 WitnessAI Update
March 12, 2026 WitnessAI Update
March 5, 2026 WitnessAI Update
February 26, 2026 WitnessAI Update
February 24, 2026 WitnessAI Update
February 10, 2026 WitnessAI Update
January 27, 2026 WitnessAI Update
January 20, 2026 WitnessAI Update
January 13, 2026 WitnessAI Update
December 18, 2025 WitnessAI Update
December 9, 2025 WitnessAI Update
November 18, 2025 WitnessAI Update
November 25, 2025 WitnessAI Update
November 11, 2025 WitnessAI Update
October 28, 2025 WitnessAI Update
October 23, 2025 WitnessAI Update
October 9, 2025 WitnessAI Update
April 11, 2025: WitnessAI Release v2.0
Draft: November 10, 2026 WitnessAI Release
June 9, 2025: WitnessAI Update
June 23, 2025: WitnessAI Update
July 18, 2025: WitnessAI Update
September 30, 2025: WitnessAI Update
July 31, 2025: WitnessAI Update
August 12, 2025: WitnessAI Update
September 23, 2025: WitnessAI Update
October 2, 2025 WitnessAI Update
Integrations
API Reference
Administrator Guide
 

Zscaler Internet Access Using URL Categories

⚠️
Advanced Cloud Firewall subscription required for user- or group-scoped forwarding.
The Forwarding Control rule created in this guide can only be scoped to specific users, groups, departments or device groups if the Zscaler tenant has an Advanced Cloud Firewall subscription.
Without it, the rule cannot be limited to a user population and must be applied by location or to all users. If you intend to roll WitnessAI out to a subset of users, confirm the subscription on your Zscaler tenant before proceeding. See About Forwarding Control in the Zscaler Help Portal.
💡
Note: WitnessAI now supports Zscaler Internet Access integration by using FQDN Address Groups. View the Zscaler FQDN integrations guide here.
If your Zscalar Internet Access deployment is not compatible with WitnessAI custom URL categories, due to conflicts with existing URL categories or Zscaler's URL categorization limitations, (e.g., when a URL is present in multiple categories), Use the Zscaler Internet Access: Using FQDN Groups.
Zscaler service account: WitnessAI requires a service account for administering Zscaler. Instructions are in the Configure Service Account section below.
Z-Tunnel 1.0 / PAC users: Firewall processing for Z-Tunnel 1.0 and PAC Road Warriors must be enabled in ZIA Advanced Settings for the Forwarding Control rule to apply to those users. This is a tenant-wide setting. See Enable Firewall Processing for Z-Tunnel 1.0 and PAC Traffic below.
 

Quick Summary

The Zscaler configurations required to integrate WitnessAI are:
  1. Admin Role
  2. Admin Account in ZIA or ZIdentity
  3. Cloud Service API Key
  4. Proxy Setup
 

Create admin role

Create an Admin Role under Administration → Administrator Role → Add Administrator Role
  1. Name → WitnessAI-API-Role
  2. Policy & Components → URL categories → Custom
    • Custom URL Category Management → Full
    • Override Existing Categories → None
    • Zscaler Defined URL Category Management → None
    • Set all other scope as “None” or “View Only”, then Save
notion image
 

Create admin account

Create a new admin account under Administration → Administrator Management → Administrators → Add Administrator and attach the above created admin role.
  1. Login ID → svc_witnessai_zia
  2. Role → WitnessAI-API-Role
  3. Password → Set password, then Save
notion image
💡
Note: If SAML authentication is enabled for admin logins, the 'Password-Based Login' option must be enabled to override this setting and allow the use of a password.
notion image

Configure service account for ZIdentity Managed Admins

This step applies to Zscaler tenants that have been migrated to ZIdentity (Zscaler’s centralized identity service). Admin accounts migrated to ZIdentity will no longer be managed through the Admin Portal.

1. Create admin account

Go to ZIdentity Portal → Directory → Users→ Add Users
  1. Login ID → svc_witnessai_zia@company.com
  2. Status → Enabled
notion image
Go to Add Users → Security Settings
c. Password Option → Set By Administrator
d. Password → Enter the password
e. Confirm Password → Repeat password
notion image
 

2. Add User Group

Go to ZIdentity Portal → Directory → User Groups → Add User Group
f. Name → WitnessAI-API-Group
g. Assign Users → WitnessAI-API-admin
notion image
 

3. Attach the admin role to the group

Go to ZIdentity Portal → Administration → Entitlements → Administrative
  1. Select → Zscaler internet Access
  2. notion image
  3. Click → Assign Groups, then select WitnessAI-API-Group and attach role: WitnessAI-API-Role, then Next
  4. notion image
  5. Verify the group and role mapping, then Assign
notion image
 

Create Cloud Service API Key

  1. Go to Administration → Cloud Service API Security → Cloud Service API Key.
  2. Check if an API key already exists.
    • If no key exists, click Add API Key to generate one.
💡
Note: Only one API key can be created per account.
If a key already exists, the Add API Key button will be greyed out.
 
notion image

Once the above configuration is completed, please handover below details to the WitnessAI account team.
  1. Administrator Login ID
  2. Administrator Password
  3. API Key
  4. Base URL: zsapi.<cloudname>.net/api/v1
 

Proxy Setup

Install WitnessAI Provided Root Certificate

  1. Click Administration → Root Certificates.
notion image
 
  1. Click Add Root Certificate.
notion image
 
  1. Name: Enter [WitnessRootCA].
  2. Type: Enter [Proxy Chaining].
  3. Content: Click [Choose File] and pick the WitnessAI-provided Root Certificate.
  4. Once uploaded, click Save.
    • Note: WitnessAI can support a customer provided Root Certificate. However, it is recommended that administrators create a unique Root Certificate specific for the WitnessAI platform and provide it to your WitnessAI account team.
notion image
 
  1. Select Administration → Proxies & Gateways.
  2. notion image
 
  1. Select Add Proxy.
  2. notion image
     
    1. Update the Proxy Name to [WitnessAI_NetworkConnector].
    2. For Proxy’s Root Certificate, select the Root Certificate created in Step 2.
    3. FQDN → connect.[tenantID].[region].witness.ai
    4. Port → 4128
    5. Enable the Insert-X-Authenticated-User switch.
    6. Enable the Base64 Encoding for X-Authenticated-User value switch.
    notion image
 
  1. Go to Proxy Gateways
    1. Click on + Add Gateway for Proxies
    2. Gateway Name: Enter [WitnessConnect].
    3. Fail Close: Click to [Disable].
    4. Primary Proxy: Enter [WitnessAI_NetworkConnector].
notion image
 
Witness AI pushes 2 custom URL categories to the Zscaler portal:
  1. WitnessFwdUrls: For use in the SSL Inspection Policy and Forwarding Control Policy.
  2. WitnessURLList: Intended for use as an NSS feed filter for Shadow Discovery.

SSL Inspection Configuration

  1. Navigate to Policy → SSL Inspection and click on Add SSL Inspection Rule.
notion image
 
  1. Input the following information
  • Rule Order: Place it above the Generic inspection/bypass rules.
  • Rule Name: [WitnessAI-Inspection Rule].
  • Rule Status: [Enabled].
  • URL Categories: [WitnessFwdUrls].
notion image
 
  • Action: Inspect
  • Enable HTTP/2: Yes
  • Select: Save
notion image
 

Enable Firewall Processing for Z-Tunnel 1.0 and PAC Traffic

💡
Note: This step is only required if end users forward traffic to ZIA via Z-Tunnel 1.0 or a PAC file. Z-Tunnel 2.0 traffic is subject to Forwarding Control by default.
This is a tenant-wide setting. Enabling it applies all firewall rules to  Z-Tunnel 1.0 and PAC traffic. Validate the impact of your existing Firewall rules on end-user traffic before enabling.
  1. Navigate to Administration → Advanced Settings.
  2. Under Firewall Settings for Z-Tunnel 1.0 and PAC (Road Warriors), enable Enable Firewall for Z-Tunnel 1.0 and PAC Road Warriors.
ZIA Advanced Settings page. Toggle highlighted for “Firewall Settings for Z-Tunnel 1.0 and PAC (Road Warriors)”
  1. Select Save and Activate the change.

 

Network Connector Integration

  1. Select: Policy → Forwarding Control.
notion image
 
  1. Select Add Forwarding Rule.
    • Rule Order: Make this as high as possible.
    • Rule Name: Enter [WitnessForwarding].
    • Rule Status: Choose [Enabled].
    • Forwarding Method: Choose [Proxy Chaining]
    • General: [Define which user population will be inspected for AI].
    • Note: Scoping this rule by Users, Groups, Departments or Device Groups requires an Advanced Cloud Firewall subscription. Without it, scope by Location. Otherwise leave the criteria set to “Any”. See the Advanced Cloud Firewall banner at the top of this page.
    • Forward to Proxy Gateway: Choose [WitnessAI_NetworkConnector].
    notion image
     
    • Destination → URL Category → WitnessFwdUrls.
    • Select: Save.
notion image
 

 

NSS Integration

1. Select Administration → Nanolog Streaming Service
notion image
 
  1. Add NSS Server
  • Name: WitnessAI-NSS
  • Type: Choose [NSS for Web]
  • Status: Enabled
  • Select: Save
notion image
 
  1. Download SSL Certificate and provide to Account team
notion image
 
A customer-managed NSS would result in plain text log transmission over the internet, creating security risks. To prevent this, WitnessAI hosts the NSS server on the customer’s behalf and enrolls it into the customer cloud using the exported certificate.
WitnessAI logger is designed to parse Zscaler web logs in CSV format. To enable this, NSS feeds that meet the WitnessURLList criteria should be configured to forward web logs to the logger service at logger.[tenant-id].[region].witness.ai, using TCP port 5514.
 
  1. Add NSS Feed
  • Name: WitnessAI-NSS Feed
  • NSS server: Choose [WitnessAI-NSS ]
  • Status: Enabled
  • SIEM Destination Type: FQDN
  • SIEM FQDN: Will be provided by account team
  • SIEM TCP PORT: 5514
  • Log type: Web Log
  • Feed Output Type: CSV
  • Feed Output Format: As below
"%s{time}","%s{login}","%s{proto}","%s{eurl}","%s{action}","%s{appname}","%s{app_status}","%s{appclass}","%d{reqsize}","%d{respsize}","%s{urlclass}","%s{urlsupercat}","%s{urlcat}","%s{malwarecat}","%s{threatname}","%d{riskscore}","%s{threatseverity}","%s{dlpeng}","%s{dlpdict}","%s{location}","%s{dept}","%s{cip}","%s{sip}","%s{reqmethod}","%s{respcode}","%s{ua}","%s{ereferer}","%s{ruletype}","%s{rulelabel}","%s{contenttype}","%s{unscannabletype}","%s{deviceowner}","%s{devicehostname}","%s{keyprotectiontype}"
notion image
 
  • Click To Where tab → Web Log Filters → URL Categories: Select [WitnessURLList ]
  • Select: Save
notion image