I'm implementing a web filter for my organization and I'm considering zScaler. I do not want to use proxy PAC file. I just got off the phone with zScaler's sales and they claim that they can differentiate my users post-NAT using cookies. They did not explain how it works but showed me a demo. My topology is as follows:
RFC 1918 Space -> FW -> 1.1.1.1 --- 1.1.1.2 -> Router --> Internet
Essentially at the router above I will GRE tunnel to their ZEN node. The ZEN will only see my public IP, 1.1.1.1.
Upon first visiting the internet I will have to authenticate. After that, the user sessions are tracked using cookies. This doesn't make sense to me because:
- Two sites, cnn.com and reddit.com, for example will have completely different cookies set by my browser. zScaler will see something like:
- 1.1.1.1:23883 --> cnn.com:80 + HTTP headers and potentially cookies sent by the browser which are unique to cnn.com and don't necessarily ID me as joeDomainUser.
- 1.1.1.1:26364 --> reddit.com:80 + HTTP headers and potentially cookies sent by the browser which are unique to reddit.com and don't necessarily ID me as joeDomainUser.
Sure if I authenticate going to cnn.com it can inject a cookie into the response, but how will this track me when going to reddit.com? The browser will send different cookies.