Add optional OIDC-group-based visibility for endpoint groups
Describe the feature request
Gatus already has OIDC authentication and endpoints[].group. In the current configuration, a Gatus group is simply the string assigned to each endpoint.
Add one optional field to the existing security.oidc configuration so an existing Gatus group can be associated with an OIDC group.
security:
oidc:
permissions:
- group: services
oidc-group: user
- group: "*"
oidc-group: adminAfter login, users would see only the Gatus groups mapped to their OIDC groups in the normal dashboard view. Users in multiple OIDC groups would see the combined groups. Without this option, the current behavior would remain unchanged.
This is a best-effort dashboard visibility feature, not a strict security boundary.
Why do you personally want this feature to be implemented?
I want my family to open Gatus and immediately see the uptime of the applications they use, while I can still monitor everything.
How long have you been using this project?
I am currently testing Gatus.
Additional information
Issue #913 requested multiple dashboards by group and was closed as not planned. This provides the same usability benefit without multiple dashboards, or a major rewrite.
The implementation could extend the existing OIDC session to retain the groups claim, then apply the mapping when building the dashboard status response. Endpoint checks, alerts, storage, and monitoring would remain unchanged.
Source: TwiN/gatus