Thanks to visit codestin.com
Credit goes to lib.rs

59 releases

0.0.67 Nov 27, 2025
0.0.65 Oct 11, 2025
0.0.59 Jul 30, 2025
0.0.50 Mar 24, 2025
0.0.13 Mar 28, 2024

#541 in Authentication

Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App

326 downloads per month
Used in 3 crates

MIT license

200KB
5K SLoC

Quick Microservices Keycloak - qm-keycloak

utilities to work with a Keycloak server and managing authentication and authorization


GitHub repositoryCargo packageDocs

github.com - quick-microservice-rs crates.io - qm-keycloak
github.com - workflow - build


Description

With this crate it is easy to get a Keycloak configuration with the most common settings. It also provides token management and session handling as well as Keycloak configuration validation.

Usage

let keycloak_config = qm::keycloak::KeycloakConfig::new()?;

The Config is populated with environment variables. By default, all variables with the prefix KEYCLOAK_ are considered.

The prefix can be changed by using a builder pattern.

let example_config = qm::keycloak::KeycloakConfig::builder().with_prefix("EXAMPLE_").build()?;

Variables and Defaults

These variables are available and are set with the following defaults.

variable struct field default
KEYCLOAK_REALM realm "rmp"
KEYCLOAK_CLIENT_ID client_id "spa"
KEYCLOAK_USERNAME username "admin"
KEYCLOAK_PASSWORD password "admin"
KEYCLOAK_THEME theme "qm"
KEYCLOAK_EMAIL_THEME email_theme "qm"
KEYCLOAK_REALM_ADMIN_EMAIL realm_admin_email "[email protected]"
KEYCLOAK_REALM_ADMIN_USERNAME realm_admin_username "admin"
KEYCLOAK_REALM_ADMIN_PASSWORD realm_admin_password "Admin123!"
KEYCLOAK_PORT port 42210
KEYCLOAK_HOST host "127.0.0.1"
KEYCLOAK_ADDRESS address http://{host}:{port}/
KEYCLOAK_PUBLIC_URL public_url "http://127.0.0.1:80"
KEYCLOAK_SMTP_REPLY_TO_DISPLAY_NAME smtp_reply_to_display_name
KEYCLOAK_SMTP_STARTTLS smtp_starttls false
KEYCLOAK_SMTP_PORT smtp_port 1025
KEYCLOAK_SMTP_HOST smtp_host "smtp"
KEYCLOAK_SMTP_REPLY_TO smtp_reply_to
KEYCLOAK_SMTP_FROM smtp_from "[email protected]"
KEYCLOAK_SMTP_FROM_DISPLAY_NAME smtp_from_display_name
KEYCLOAK_SMTP_SSL smtp_ssl false
KEYCLOAK_BROWSER_FLOW browser_flow "browser"
KEYCLOAK_AUTHENTICATOR_EMAIL_SUBJECT authenticator_email_subject "Temporary Authentication Code"

Dependencies

~46–68MB
~1M SLoC