docs(authelia): add authelia rules page (#14509)

**Description**
Adds a rules page with some common authelia rules.

⚒️ Fixes  # 

**⚙️ Type of change**

- [ ] ⚙️ Feature/App addition
- [ ] 🪛 Bugfix
- [ ] ⚠️ Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [ ] 🔃 Refactor of current code

**🧪 How Has This Been Tested?**

**📃 Notes:**

**✔️ Checklist:**

- [ ] ⚖️ My code follows the style guidelines of this project
- [ ] 👀 I have performed a self-review of my own code
- [ ] #️⃣ I have commented my code, particularly in hard-to-understand
areas
- [ ] 📄 I have made corresponding changes to the documentation
- [ ] ⚠️ My changes generate no new warnings
- [ ] 🧪 I have added tests to this description that prove my fix is
effective or that my feature works
- [ ] ⬆️ I increased versions for any altered app according to semantic
versioning

** App addition**

If this PR is an app addition please make sure you have done the
following.

- [ ] 🪞 I have opened a PR on
[truecharts/containers](https://github.com/truecharts/containers) adding
the container to TrueCharts mirror repo.
- [ ] 🖼️ I have added an icon in the Chart's root directory called
`icon.png`

---

_Please don't blindly check all the boxes. Read them and only check
those that apply.
Those checkboxes are there for the reviewer to see what is this all
about and
the status of this PR with a quick glance._
This commit is contained in:
kqmaverick 2023-11-09 17:06:52 -08:00 committed by GitHub
parent dfd6d3fd52
commit b6df3e64d3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 107 additions and 0 deletions

View File

@ -0,0 +1,107 @@
# Authelia Rules
This is a collection of some common Authelia Rules.
:::note[RULE ORDER]
It is important that rules are created in the correct order in Authelia. Rules are processed from top to bottom with the first matching rule being applied. The most narrow rules should be applied first with the most broad rules last.
:::
All rules requiring Authelia authentication were configured with `two_factor` (2FA). If you do not want 2FA on some or all rules replace the Policy with `one_factor`
## API Rule
This rule will bypass Authelia for API level access in most apps. This should always be your first rule.
Domain: `*.domain.tld`
Policy: `bypass`
Subject: `Not Used (Do Not Add)`
Networks: `Not Used (Do Not Add)`
Resources:
- `^/api([/?].*)?$`
- `^/identity.*$`
- `^/triggers.*$`
- `^/meshagents.*$`
- `^/meshsettings.*$`
- `^/agent.*$`
- `^/control.*$`
- `^/meshrelay.*$`
- `^/wl.*$`
![authelia-api](./img/authelia-api.png)
## Vaultwarden
These rules will protect the Vaultwarden admin page with Authelia but bypass when accessing the web vault. The order of these rules is critical or the admin page will not be protected.
### Rule 1
Domain: `vaultwarden.domain.tld`
Policy: `two_factor`
Subject: `Not Used (Do Not Add)`
Networks: `Not Used (Do Not Add)`
Resources: `^*/admin.*$`
![authelia-vw1](./img/authelia-vw1.png)
### Rule 2
Domain: `vaultwarden.domain.tld`
Policy: `bypass`
Subject: `Not Used (Do Not Add)`
Networks: `Not Used (Do Not Add)`
Resources: `Not Used (Do Not Add)`
![authelia-vw2](./img/authelia-vw2.png)
## User Rule
This rule will allow users in the `lldap_user` group access to only the specified applications.
Domain:
- `radarr.domain.tld`
- `sonarr.domain.tld`
Policy: `two_factor`
Subject: `group:lldap_user`
Networks: `Not Used (Do Not Add)`
Resources: `Not Used (Do Not Add)`
![authelia-user](./img/authelia-user.png)
## Catch All Rule
This rule will catch any access requests not covered by other rules.
Domain:
- `domain.tld`
- `*.domain.tld`
Policy: `two_factor`
Subject: `group:lldap_admin`
Networks: `Not Used (Do Not Add)`
Resources: `Not Used (Do Not Add)`
![authelia-catch](./img/authelia-catch.png)

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB