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.2.0.tar.gz (8.7 kB view details)

Uploaded Source

Built Distribution

garpix_keycloak-1.2.0-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file garpix_keycloak-1.2.0.tar.gz.

File metadata

  • Download URL: garpix_keycloak-1.2.0.tar.gz
  • Upload date:
  • Size: 8.7 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.8

File hashes

Hashes for garpix_keycloak-1.2.0.tar.gz
Algorithm Hash digest
SHA256 8cc449d1e6c95616461f1c96b3f0c58a8f71b9c0511ae8a1939bfe258a10ddbd
MD5 ebd65070abd46237eaae53ffde30e8b2
BLAKE2b-256 5888f713f4c532a2a185577a582799c078ed2b7d945f5e521214fab9a032f17e

See more details on using hashes here.

File details

Details for the file garpix_keycloak-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: garpix_keycloak-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 12.8 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.8

File hashes

Hashes for garpix_keycloak-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 75e9706e269e33b58a22e6d913388f857102cf604226530b2bab314b7b242603
MD5 d87eb6b9ce309b0bc2130b65b20213a1
BLAKE2b-256 f31c80294208e0da145a6349e5465a7586dc453fe953908adf590341f61dd840

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