# Proxy Docker image

This directory contains a Dockerfile that will replace the Envoy
configuration in the standard Istio proxy image with the configuration
template in this directory.

The main reason to change the configuration template here is to change
the "check_cache_keys" parameter. With this change, the default
Istio proxy will cache "check" results with the same URL. This change
adds HTTP headers "apikey" and "Authorization" so that the caching
will take authentication into account.
