IDP Service Configuration

Introduction

The Infinite Scale IDP service provides a built-in minimal OpenID Connect provider.

The IDP service is mainly suitable for smaller installations. The recommendation for larger setups is to replace IDP with and external OpenID Connect Provider. See the ocis_keycloak deployment example on github for more details.

By default, the IDP service is configured to use the Infinite Scale IDM service as its LDAP backend for looking up and authenticating users. Other backends like an external LDAP server can be configured via a set of environment variables. For details see below.

The IDP service is by design limited in its functionality:

  • IDP does NOT support branding or theming.
    This also means that there is no possibility to customize the login screen.

  • IDP has no brute force protection like external IDP’s have.
    This means that there is no "invalid credential" logged on consecutive failed login attempts.

  • The IDP has no backchannel logout capability.
    Consider that you have configured Infinite Scale to work with Keycloak. When logging out via the webUI, Keycloak will issue a callback to the Infinite Scale backend about the fact that the session has ended. The Infinite Scale backend is then able to invalidate it’s internal session cache. The IDP service does not support backchannel logout and Infinite Scale will consider the access token valid until it reaches it’s expiry.

Therefore the IDP service is not meant to replace an external OpenID Connect Provider.

To use the embedded IDP service, it must be accessed with https. Accessing it with http is not possible and generates an error that is logged.

Default Values

  • IDP listens on port 9130 by default.

Configuration

Environment Variables

The idp service is configured via the following environment variables. Read the Environment Variable Types documentation for important details. Column IV shows with which release the environment variable has been introduced.

404: Not Found

  • 8.2.0

404: Not Found

YAML Example

  • 8.2.0

404: Not Found