docs/content/overview/security/threat-model.md
The design goals for Authelia is to protect access to applications by collaborating with reverse proxies to prevent attacks coming from the edge of the network. This document gives an overview of what Authelia is protecting against. Some of these ideas are expanded on or otherwise described in Security Measures.
Authelia is considered to be running within a trusted network and it heavily relies on the first level of security provided by reverse proxies. It's very important that you take time configuring your reverse proxy properly to get all the authentication benefits brought by Authelia.
Some general security tweaks are listed in Security Measures to give you some ideas.
If properly configured, Authelia guarantees the following for security of your users and your apps:
X-Forwarded-* and X-Original-* headers are able to be trusted by allowing configuration of trusted proxy
servers.It's important to note that Authelia is considered running in a trusted environment for two reasons:
Remote-User, Remote-Name,
Remote-Email and Remote-Groups headers to forward authentication data to your backends. These headers are
transmitted unsigned to the backends, meaning a malicious user within the network could pretend to be
Authelia and send those headers to bypass authentication and gain access to the service. This could be mitigated by
transmitting those headers with a digital signature which could be verified by the backend however, many backends
just won't support it. It has therefore been decided to invest in OpenID Connect 1.0 instead to solve that
authentication delegation problem.