Skip to main content

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


Download files

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

Source Distribution

ejabberd_extauth_oidc_password-1.0.1.tar.gz (2.3 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file ejabberd_extauth_oidc_password-1.0.1.tar.gz.

File metadata

File hashes

Hashes for ejabberd_extauth_oidc_password-1.0.1.tar.gz
Algorithm Hash digest
SHA256 5da3154a9110f2705d985689fddd03885931742833537a24fa29db20c8b7a174
MD5 0aee9ed050157ef85f273429e5b503c3
BLAKE2b-256 dc249f9450f34ecb3f7f0fac075adf33a667fd9a186b1fc31ce817af17b2fa7e

See more details on using hashes here.

File details

Details for the file ejabberd_extauth_oidc_password-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for ejabberd_extauth_oidc_password-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d801e2e0087ea215d46e1064da669ac8d8e373f8b1796076d36979cb7c5ab22e
MD5 4c098aa13c3d7eed95ffd577ba9a5d1f
BLAKE2b-256 88fe1d4e8d8d9e3b43b472bf689959a674c8f50dd74f7b45c9b807f125cc6bce

See more details on using hashes here.

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