Skip to main content

No project description provided

Project description

Garpix Keycloak

Keycloak uth module for Django/DRF projects. Part of GarpixCMS.

Used packages:

Quickstart

Install with pip:

pip install garpix_keycloak

Add the garpix_keycloak to your INSTALLED_APPS:

# settings.py

# ...
INSTALLED_APPS = [
    # ...
    'garpix_keycloak',
]

Add KeycloakUserMixin to your User model:

from django.contrib.auth.models import AbstractUser

from garpix_keycloak.mixins import KeycloakUserMixin


class User(AbstractUser, KeycloakUserMixin):

    class Meta:
        verbose_name = 'Пользователь'
        verbose_name_plural = 'Пользователи'

    def __str__(self):
        return self.username

Add KeycloakAuthMiddleware to MIDDLEWARE settings after django.contrib.auth.middleware.AuthenticationMiddleware:

# settings.py


MIDDLEWARE = [
    # ...
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'garpix_keycloak.middlewares.KeycloakAuthMiddleware',
]

Add authentication backend:

AUTHENTICATION_BACKENDS = [
    # ...
    'garpix_keycloak.backends.KeycloakAuthenticationBackend'
]

Add keycloak parameters to settings.py:

# settings.py


KEYCLOAK = {
    'SERVER_URL': 'your_server_url',
    'REALM': 'your_realm',
    'CLIENT_ID': 'your_client_id',
    'CLIENT_SECRET_KEY': 'your_client_secret_key'
}

Use get_keycloak_url from KeycloakService to generate keycloak log in link.

garpix_keycloak creates User model instance, using create_keycloak_user class method. You can override it if you need some customization in your project.

Enjoy!

Changelog

See CHANGELOG.md.

Contributing

See CONTRIBUTING.md.

License

MIT


Developed by Garpix / https://garpix.com

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

garpix_keycloak-1.3.0rc1.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

garpix_keycloak-1.3.0rc1-py3-none-any.whl (13.7 kB view details)

Uploaded Python 3

File details

Details for the file garpix_keycloak-1.3.0rc1.tar.gz.

File metadata

  • Download URL: garpix_keycloak-1.3.0rc1.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.0.0 pkginfo/1.9.6 requests/2.28.2 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/3.10.13

File hashes

Hashes for garpix_keycloak-1.3.0rc1.tar.gz
Algorithm Hash digest
SHA256 771453ac78a2026a4316a9e70bfdadcfc29a76bbe2fd711ca7aa6dc00ec99ca0
MD5 8019df5c2f505e7e7034fd8e903f250d
BLAKE2b-256 ace6204c0600e17dfdef145e719de3990a8d93d194485f901d3f0b57251a6d99

See more details on using hashes here.

File details

Details for the file garpix_keycloak-1.3.0rc1-py3-none-any.whl.

File metadata

  • Download URL: garpix_keycloak-1.3.0rc1-py3-none-any.whl
  • Upload date:
  • Size: 13.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/6.0.0 pkginfo/1.9.6 requests/2.28.2 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/3.10.13

File hashes

Hashes for garpix_keycloak-1.3.0rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 cc1118ce6c58fa43ed39291ee5628264d144255a11920cfb6c01a294a6843dc2
MD5 cb66e1752a86b94c2b5f693bfe877c1c
BLAKE2b-256 2b3d829b1cca8d0a923434fb80fcef3b45ef3f12c57a3cd8cd03ee7275fce03e

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