OpenId Connect Login

TermWeb OpenId Connect authentication supports only Authorization Code Flow with Authentication Method Basic and POST.

Example of configuration:

oidc.enabled=true oidc.origin=<origin URL> oidc.client.id=<client id> oidc.client.secret=<client secret> oidc.client.secret.basic=true (true to use Basic authentication, otherwise POST will be used) oidc.basic.auth.preemptive=true (true when send Basic authentication header with first request) oidc.auth.url=<authentication endpoint> (adds to <origin URL>) oidc.token.url=<token endpoint> (adds to <origin URL>) oidc.userdetails.url=<user details endpoint> (adds to <origin URL>) oidc.scopes.requested=openid profile email oidc.userdetails.field.client=termweb_client_name (field to identify client can be skipped when default client is configured) oidc.userdetails.field.default.client=admin (when client name can't be retrieved from user details) oidc.userdetails.field.user=preferred_username (field to identify user, stored as username in TermWeb) oidc.autocreate.users=true (aut create user when it not exists) oidc.login.as.guest.when.usermissing=false

In order to test authentication a user using OpenId Connect, you need to access the following URL:

<TermWeb URL>/login-oidc?origin=<origin URL>

Enabling external login buttons

After release 4.0.5-9

To configure buttons for external logins, like SAML or OIDC, you need to find string "@externalLoginURLs@" in termweb-ui distributive and replace with value like this:

[ { label: 'Login with Microsoft', url: '/login-oidc?origin=https://login.microsoftonline.com/<tenant-id>', autologin: false, icon: 'fab fa-microsoft', styleStr: 'color:#2f55b9; font-weight:500;' }, { label: '① Login with SAML', url: '/login-saml/ssologin', styleStr: 'color:#414b54; font-weight:500;' } ]