This recipe is compatible with eZ Publish 5.2 / 2013.07
Be sure to have read Context aware HTTP cache documentation before reading this recipe.
When user hash generation is requested, eZ Publish will create a hashable User Identity object.
One can add information to the Identity object making the resulted hash vary. This can be done by registering Identity definers.
For this, all you need to do is to declare a service with
ezpublish.identity_definer tag. Class for this service must implement
Securing hash generation request
By default, hash generation requests are granted for localhost (
If you want to enlarge the scope (e.g. if your Varnish server is not running on the same machine), you can override
canGenerateUserHash() protected method in your main kernel class (mostly