mirror of
https://github.com/netbirdio/docs.git
synced 2026-10-24 22:49:10 +02:00
[doc] Document per-target reverse proxy access control (#1014)
* [doc] Document per-target reverse proxy access control * docs: screenshots, when-to-use and Bypass warning for target access actions - Add screenshots of the target Access setting and the target-list indicators - Add "When to use per-target access actions" - Warn that Bypass authentication makes the path public - Note that a Block on /admin/ does not cover /admin - Access logs: describe the User-column icon and tooltip; document access_action=invalid_path * docs: tighten target access wording * docs: say where the access log icons appear --------- Co-authored-by: Jack Carter <128555021+SunsetDrifter@users.noreply.github.com>
This commit is contained in:
co-authored by
Jack Carter
parent
6f6ad52072
commit
cd63a59360
@@ -37,9 +37,10 @@ Every log entry (HTTP and L4) shares a common set of fields. Some fields are onl
|
||||
| **Bytes Downloaded** | Bytes sent from backend to client | Yes | Yes |
|
||||
| **Source IP** | The client's IP address | Yes | Yes |
|
||||
| **Location** | Country, city, and subdivision based on source IP geolocation | Yes | Yes |
|
||||
| **Auth Method** | Raw `auth_method_used` value: `oidc` (shown as SSO in the dashboard), `password`, `pin`, or `header`. For denied requests, carries the restriction code instead (e.g. `ip_restricted`, `crowdsec_ban`). Omitted from the API response when empty | Yes | Restriction code on denials |
|
||||
| **Auth Method** | Raw `auth_method_used` value: `oidc` (shown as SSO in the dashboard), `password`, `pin`, `header`, or a target access action such as `path_bypass` or `path_block`. For denied requests, carries the restriction code instead (e.g. `ip_restricted`, `crowdsec_ban`). Omitted from the API response when empty | Yes | Restriction code on denials |
|
||||
| **User** | The authenticated user's ID, set when `oidc` authentication was used. Omitted from the API response when empty | Yes | N/A |
|
||||
| **Reason** | Exactly one of two values: `Authentication failed` when authentication or an access restriction rejected the request, or `Request failed` when an authenticated request returned `4xx`/`5xx`. Set for HTTP entries only and omitted from the API response when empty. Never a specific denial code: see the note under [Deny reasons](#deny-reasons) | Yes | Omitted |
|
||||
| **Metadata** | Additional decision details. Target access records `access_action` as `bypass`, `block`, or `invalid_path` (an ambiguous request path rejected with `400`); CrowdSec records its mode and verdict here | Yes | Yes |
|
||||
|
||||
## Understanding log entries
|
||||
|
||||
@@ -47,8 +48,8 @@ Every log entry (HTTP and L4) shares a common set of fields. Some fields are onl
|
||||
|
||||
HTTP log entries fall into three categories based on the status code:
|
||||
|
||||
- **Allowed requests**: successful requests show a `2xx` status code along with the authentication method used to access the service.
|
||||
- **Denied requests**: failed authentication or access restriction blocks show `401` or `403` status codes with `reason` set to `Authentication failed`. The specific cause (invalid password, missing SSO session, IP restricted, country restricted, CrowdSec verdict) is carried in `auth_method_used`, not in `reason`.
|
||||
- **Allowed requests**: successful requests show a `2xx` status code along with the authentication method used to access the service. A target that bypasses authentication records `path_bypass`. The dashboard marks these entries with a small open-lock icon in the **User** column, at the right end of the row, labeled **Auth Bypassed** on hover.
|
||||
- **Denied requests**: failed authentication, access restriction blocks, and blocked target paths show `401` or `403` status codes with `reason` set to `Authentication failed`. The specific cause (invalid password, missing SSO session, blocked path, IP restricted, country restricted, CrowdSec verdict) is carried in `auth_method_used`, not in `reason`. A blocked target path records `path_block`. The dashboard marks these entries with a small shield icon in the **User** column, at the right end of the row, labeled **Path Blocked** on hover.
|
||||
- **Errors**: backend errors or proxy issues show `5xx` status codes. These typically indicate that the target service is unreachable or returned an error.
|
||||
|
||||
### L4 log entries
|
||||
@@ -63,6 +64,7 @@ The following deny reasons identify why a connection was rejected. Note that for
|
||||
|
||||
| Reason | Description |
|
||||
|--------|-------------|
|
||||
| `path_block` | The matching HTTP target is configured to block access |
|
||||
| `ip_restricted` | The client IP was blocked by a CIDR access restriction |
|
||||
| `country_restricted` | The client's country was blocked by a country access restriction |
|
||||
| `geo_unavailable` | Country restrictions are configured but the GeoIP database is unavailable (fail-closed) |
|
||||
|
||||
Reference in New Issue
Block a user