ejabberd extauth script to use OpenID Connect with the Resource Owner Password Grant Flow
Project description
ejabberd extauth script for OIDC Password Grant Flow
This script enables the use of OIDC providers for password login in ejabberd. It uses the Password Grant, which is considered legacy. However, with ejabberd lacking proper OIDC support, it is a viable work-around.
Installation
It is best to install the script using pip
until it gets available in distributions:
sudo pip install --break-system-packages ejhabberd-extauth-oidc-password
This makes the script available at /usr/local/bin/ejabberd_extauth_oidc_password
.
Configuration
Configuring the script
The script needs the following information about the OIDC provider:
- Issuer URL
- Token URL
- Client ID
- Client secret
Then, the script can be configured in /etc/ejabberd/extauth/oidc_password.yml
:
handler:
test.example.com: # one block per XMPP server domain
issuer: https://idp.example.com
token_url: https://idp.example.com/oauth/token/
client_id: myclient_abcd
client_secret: top_secret
Configuring ejabberd
For ejabberd, follow the instructions for configuring external authentication.
Set extauth_program
to /usr/local/bin/ejabberd_extauth_oidc_password
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ejabberd_extauth_oidc_password-1.0.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5da3154a9110f2705d985689fddd03885931742833537a24fa29db20c8b7a174 |
|
MD5 | 0aee9ed050157ef85f273429e5b503c3 |
|
BLAKE2b-256 | dc249f9450f34ecb3f7f0fac075adf33a667fd9a186b1fc31ce817af17b2fa7e |
Hashes for ejabberd_extauth_oidc_password-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d801e2e0087ea215d46e1064da669ac8d8e373f8b1796076d36979cb7c5ab22e |
|
MD5 | 4c098aa13c3d7eed95ffd577ba9a5d1f |
|
BLAKE2b-256 | 88fe1d4e8d8d9e3b43b472bf689959a674c8f50dd74f7b45c9b807f125cc6bce |