[GH-ISSUE #5241] OIDC-based access lists #3147

Open
opened 2026-02-26 07:37:57 +03:00 by kerem · 0 comments
Owner

Originally created by @Talismanian on GitHub (Jan 28, 2026).
Original GitHub issue: https://github.com/NginxProxyManager/nginx-proxy-manager/issues/5241

Problem:

Not all sites have built in authentication, but NPM can help in this regard through access lists.

Currently, proxy hosts filtered by access lists require specific username and passwords to be added in the NPM interface. Authentication is via basic HTTP. This means that any changes for access must be done via NPM as an admin and reinforces the weaknesses of using passwords as an authentication method for hosts that require restricted access.

Solution:

When altering the access list, you are presented with an option to add a standard basic HTTP password or an OIDC connection. The connection receives the client ID and secret provided by the OIDC provider and other relevant details.

When a user visits the relevant site, they are presented with the OIDC login. If the application is configured in the OIDC manager to allow this user, then they are let in.

Alternatives

Ideally, built in authentication is preferable but this could be a solid and robust Plan B, especially for sites with insufficiently strong authentication built in.

Originally created by @Talismanian on GitHub (Jan 28, 2026). Original GitHub issue: https://github.com/NginxProxyManager/nginx-proxy-manager/issues/5241 <!-- Are you in the right place? - If you are looking for support on how to get your upstream server forwarding, please consider asking the community on Reddit. - If you are writing code changes to contribute and need to ask about the internals of the software, Gitter is the best place to ask. - If you think you found a bug with NPM (not Nginx, or your upstream server or MySql) then you are in the *right place.* --> **Problem:** Not all sites have built in authentication, but NPM can help in this regard through access lists. Currently, proxy hosts filtered by access lists require specific username and passwords to be added in the NPM interface. Authentication is via basic HTTP. This means that any changes for access must be done via NPM as an admin and reinforces the weaknesses of using passwords as an authentication method for hosts that require restricted access. **Solution:** When altering the access list, you are presented with an option to add a standard basic HTTP password or an OIDC connection. The connection receives the client ID and secret provided by the OIDC provider and other relevant details. When a user visits the relevant site, they are presented with the OIDC login. If the application is configured in the OIDC manager to allow this user, then they are let in. **Alternatives** <!-- A clear and concise description of any alternative solutions or features you've considered. --> Ideally, built in authentication is preferable but this could be a solid and robust Plan B, especially for sites with insufficiently strong authentication built in.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/nginx-proxy-manager-NginxProxyManager#3147
No description provided.