Skip to main content

Install Keycloak plugin for NEMO

Project description

NEMO plugin to add Keycloak support to your NEMO instance.


The following example are using the docker image.

start Keycloak

docker run –name keycloak jboss/keycloak:10.0.2

add admin user

docker exec -it keycloak /opt/jboss/keycloak/bin/ -u admin

in Keycloak, add your Realm “NEMO” then create a client “nemo-client”, select confidential access-type, set the ‘Root URL’ to your nemo URL (without trailing slash) and set the ‘Valid Redirect URIs’ to ‘/login-complete’ add users in Keycloak with matching username in NEMO


install library

pip install NEMO-keycloak

add to your INSTALLED_APPS:


add middleware:


add backend:

AUTHENTICATION_BACKENDS = [‘NEMO_keycloak.auth.backends.KeycloakAuthorizationCodeBackend’]

add to context_processors:


add (if needed based on your keycloak config):

KEYCLOAK_TOKEN_USERNAME_FIELD = “preferred_username”

in NEMO, run:

python migrate NEMO_Keycloak

python keycloak_create_realm <REALM_name> <server_URL> <client_id> <secret>

Known Issue

Keycloak has a known issue with audience, to fix it update your client scope “roles” and add a mapper type audience with nemo client name in it

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release. See tutorial on generating distribution archives.

Built Distribution

NEMO_keycloak-1.3.0-py3-none-any.whl (47.0 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page