Add Django middleware to auth forwarded clients
Add Django middleware to auth forwarded clients

Some services will proxy client requests to other services, where the
client does not use ASAP and the proxy must rely on other, ASAP-enabled
services to authenticate the client.

To support this, we allow the proxy to add the client's authorization
header as X-ASAP-Authorization. The middleware will then swap
authorization headers before any authorization middleware sees the
request, and swap the headers back before any view-level ASAP checks are
done.

To support anonymous clients, we require a second X-ASAP header before
we swap authorization headers.

Sem-Ver: feature

atlassian/asap-authentication-python