Skip to main content

Plugin OIDC (OpenID Connect) for Aldryn form fields.

Project description

Build Status Coverage Pypi package status Python versions license

DjangoCMS OIDC (OpenID Connect) plugins for Aldryn form fields

Plugins for post a data hangovered from OpenID provider, based on plugins DjangoCMS OIDC and Aldryn Forms.

Installation

$ pip install djangocms-oidc-form-fields

Add settings to settings.py

Start by making the following changes to your settings.py file.

# Add 'aldryn_forms' and 'djangocms_oidc_form_fields' to INSTALLED_APPS
INSTALLED_APPS = [
    # ...
    'multiselectfield',
    'django_countries',
    'mozilla_django_oidc',  # place after auth (django.contrib.auth)
    'djangocms_oidc',
    'aldryn_forms',
    'djangocms_oidc_form_fields',
]

AUTHENTICATION_BACKENDS = [
    # ...
    'djangocms_oidc.auth.DjangocmsOIDCAuthenticationBackend',
]

MIDDLEWARE = [
    # ...
    'djangocms_oidc.middleware.OIDCSessionRefresh',
]

# Define OIDC classes
OIDC_AUTHENTICATE_CLASS = "djangocms_oidc.views.DjangocmsOIDCAuthenticationRequestView"
OIDC_CALLBACK_CLASS = "djangocms_oidc.views.DjangocmsOIDCAuthenticationCallbackView"
OIDC_OP_AUTHORIZATION_ENDPOINT = "https://example.com/authorization-endpoint"
OIDC_RP_CLIENT_ID = "myClientId"

Add OIDC urls to urls.py

Modify your project urls.py file.

urlpatterns = [
    # ....
    path('oidc/', include('mozilla_django_oidc.urls')),
    path('djangocms-oidc/', include('djangocms_oidc.urls')),
]

Usage in administration

These plugins are available to the editor in the administration:

  • OIDC Fields

  • OIDC Text

  • OIDC Textarea

  • OIDC Hidden

  • OIDC Email

  • OIDC EmailIntoFromField

  • OIDC Phone

  • OIDC Number

  • OIDC Boolean

  • OIDC Span element

How to use provider MojeID

Home › Djangocms_Oidc › Oidc register consumers › oidc register consumer: Add

Name: MojeID Test

Home › Djangocms_Oidc › Oidc providers › oidc provider: add

Name: MojeID Test
Code: mojeid
Register consumer: MojeID Test

Page structure: Add

OpenID Connect: OIDC Handover data
Provider: MojeID Test
Claims: {…} (copy from the example below) For mojeid see list “claims_supported” in .well-known openid-configuration.
Verified by names: … (copy from the example below)

How to run an example

Run the example in Docker. Install as follows:

$ git clone https://github.com/CZ-NIC/djangocms-oidc-form-fields.git
$ cd djangocms-oidc-form-fields/example
$ docker-compose build web
$ docker-compose run --user $(id -u):$(id -g) web python manage.py migrate
$ docker-compose run --user $(id -u):$(id -g) web python manage.py loaddata site.json

You start the webserver:

$ docker-compose up -d

Open in your browser: https://localhost:8000/. To log in to the administrations use admin:password at http://localhost:8000/admin.

You sto Webserver:

$ docker-compose down

License

This software is licensed under the GNU GPL license. For more info check the LICENSE file.

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

djangocms_oidc_form_fields-4.1.0.tar.gz (27.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

djangocms_oidc_form_fields-4.1.0-py3-none-any.whl (32.0 kB view details)

Uploaded Python 3

File details

Details for the file djangocms_oidc_form_fields-4.1.0.tar.gz.

File metadata

File hashes

Hashes for djangocms_oidc_form_fields-4.1.0.tar.gz
Algorithm Hash digest
SHA256 803d12adba7f3c5b02aad805cf957e6d7ddc17e7becb867bd318bd9c04fe79b2
MD5 76f2a01516e90704145d1e53fae9727b
BLAKE2b-256 5ae248e2270ead0c71db211cf5cd4492aa449e0f573d81a13f4ae24187ecb2d7

See more details on using hashes here.

File details

Details for the file djangocms_oidc_form_fields-4.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for djangocms_oidc_form_fields-4.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 05dd6c0314d6e80888425666d4394aabe075a1c3276d724147b3e28914eee6a6
MD5 26720480a50e4378cbb208686161a654
BLAKE2b-256 87667169118fa0e518d0e2affd3a2aae2a3ba2fd38e7e8ded3def2d6bcf28e95

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page