OpenID Connect (OIDC) #

See: What is OpenID Connect?.

This is one of the access control methods supported by FreshRSS.

OIDC support is provided by the Apache module mod_auth_openidc. This documentation is about OIDC as available in our official Docker image, or when using an Apache Web server. Additional documentation can be found in that project.

The callback URL is https://<your-domain>/i/oidc/.

Initial Setup Process #

When setting up a new FreshRSS instance with OIDC, follow these steps carefully to ensure proper administrator access:

  1. Configure your OIDC environment variables (see configuration section below)
  2. Start your FreshRSS instance
  3. Access the Web interface – it will immediately attempt to authenticate you via your OIDC provider
  4. After successful authentication, you’ll be directed to the setup wizard
  5. In the authentication setup step (currently step 4):
    • Enter the exact username that matches your OIDC identity (e.g., admin@idm.example.com) as the default user
    • The password field can contain any random value as it won’t be used with OIDC
    • Select HTTP Authentication Method as the authentication method
    • If configured correctly, you should see your current username displayed as: HTTP (for advanced users with HTTPS) (REMOTE_USER='admin@idm.example.com'). If it doesn’t, recheck your OIDC setup and the variables to avoid locking yourself out from administrator access.
  6. Complete the remaining setup steps

⚠️ Important: Using a random username instead of your actual OIDC identity as the default user may result in no administrator access to your instance.

Using Docker #

OIDC support in Docker is activated by the presence of a non-empty non-zero OIDC_ENABLED environment variable.

ℹ️ Only available in our default Debian image (not Alpine) for x86_64 (help welcome).

Configuration Environment Variables #

You may add additional custom configuration in a new ./FreshRSS/p/i/.htaccess file.

Token endpoint authentication method #

Our reference Apache configuration does not set OIDCProviderTokenEndpointAuth, so mod_auth_openidc falls back to its own default, client_secret_basic (i.e. the client ID and secret are sent in an HTTP Basic Authentication header when calling the token endpoint). If your identity provider’s discovery metadata advertises a token_endpoint_auth_methods_supported array, mod_auth_openidc instead uses the first method in that array that it also supports, which may not be client_secret_basic. If you need a different method, you can set OIDCProviderTokenEndpointAuth yourself in a custom ./FreshRSS/p/i/.htaccess file, as mentioned above.

Using own Apache installation #

See our reference Apache configuration for more information.

Identity Provider #

See specific instructions for: