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.
Metadata
Release files for ejabberd-extauth-oidc-password 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ejabberd_extauth_oidc_password-1.0.1.tar.gz | 2.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ejabberd_extauth_oidc_password-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 5.3 kB
Release files / ejabberd_extauth_oidc_password-1.0.1.tar.gz
| Download URL | ejabberd_extauth_oidc_password-1.0.1.tar.gz |
|---|---|
| Size | 2.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5da3154a9110f2705d985689fddd03885931742833537a24fa29db20c8b7a174
|
|
BLAKE2b-256 checksum How to use checksums |
dc249f9450f34ecb3f7f0fac075adf33a667fd9a186b1fc31ce817af17b2fa7e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.0 CPython/3.11.9
|
Release files / ejabberd_extauth_oidc_password-1.0.1-py3-none-any.whl
| Download URL | ejabberd_extauth_oidc_password-1.0.1-py3-none-any.whl |
|---|---|
| Size | 3.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d801e2e0087ea215d46e1064da669ac8d8e373f8b1796076d36979cb7c5ab22e
|
|
BLAKE2b-256 checksum How to use checksums |
88fe1d4e8d8d9e3b43b472bf689959a674c8f50dd74f7b45c9b807f125cc6bce
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.0 CPython/3.11.9
|