mirror of
https://github.com/NginxProxyManager/nginx-proxy-manager.git
synced 2025-05-03 04:22:28 +00:00
* add `oidc-config` setting allowing an admin user to configure parameters * modify login page to show another button when oidc is configured * add dependency `openid-client` `v5.4.0` * add backend route to process "OAuth2 Authorization Code" flow initialisation * add backend route to process callback of above flow * sign in the authenticated user with internal jwt token if internal user with email matching the one retrieved from oauth claims exists Note: Only Open ID Connect Discovery is supported which most modern Identity Providers offer. Tested with Authentik 2023.2.2 and Keycloak 18.0.2
45 lines
2.6 KiB
Plaintext
45 lines
2.6 KiB
Plaintext
<div class="container">
|
|
<div class="row">
|
|
<div class="col col-login mx-auto">
|
|
<form class="card" action="" method="post">
|
|
<div class="card-body p-6">
|
|
<div class="container">
|
|
<div class="row">
|
|
<div class="col-sm-12 col-md-6 margin-auto">
|
|
<div class="text-center p-6">
|
|
<img src="/images/logo-text-vertical-grey.png" alt="Logo" />
|
|
<div class="text-center text-muted mt-5">
|
|
<%- i18n('main', 'version', {version: getVersion()}) %>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-12 col-md-6">
|
|
<div class="card-title"><%- i18n('login', 'title') %></div>
|
|
<div class="form-group">
|
|
<label class="form-label"><%- i18n('str', 'email-address') %></label>
|
|
<input name="identity" type="email" class="form-control" placeholder="<%- i18n('str', 'email-address') %>" required autofocus>
|
|
</div>
|
|
<div class="form-group">
|
|
<label class="form-label"><%- i18n('str', 'password') %></label>
|
|
<input name="secret" type="password" class="form-control" placeholder="<%- i18n('str', 'password') %>" required>
|
|
<div class="invalid-feedback secret-error"></div>
|
|
</div>
|
|
<div class="form-footer">
|
|
<button type="submit" class="btn btn-teal btn-block"><%- i18n('str', 'sign-in') %></button>
|
|
</div>
|
|
<div class="form-footer login-oidc">
|
|
<div class="separator"><slot>OR</slot></div>
|
|
<button type="button" id="login-oidc" class="btn btn-teal btn-block">
|
|
<%- i18n('str', 'sign-in-with') %> <span class="oidc-provider"></span>
|
|
</button>
|
|
<div class="invalid-feedback oidc-error"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|