Skip to main content

tests coverage Documentation Status

This is a provider-side implementation of the SCIM 2.0 [1] specification for use in Django.

Note that currently the only supported database is Postgres.

Installation

Install with pip:

$ pip install django-scim2

Then add the django_scim app to INSTALLED_APPS in your Django’s settings:

INSTALLED_APPS = (
    ...
    'django_scim',
)

By default, request.user.is_anonymous() is checked to determine if the SCIM request should be allowed or denied.

If you have specific authentication needs, look into overriding the default “is authenticated predicate” (i.e. see GET_IS_AUTHENTICATED_PREDICATE for details) or subclassing the middleware that performs the check (AUTH_CHECK_MIDDLEWARE).

Add the necessary url patterns to your root urls.py file. Please note that the namespace is mandatory and must be named scim:

urlpatterns = [
    ...
    path('scim/v2/', include('django_scim.urls')),
]

Finally, add settings appropriate for you app to your settings.py file:

SCIM_SERVICE_PROVIDER = {
    'NETLOC': 'localhost',
    'AUTHENTICATION_SCHEMES': [
        {
            'type': 'oauth2',
            'name': 'OAuth 2',
            'description': 'Oauth 2 implemented with bearer token',
        },
    ],
}

Other SCIM settings can be provided but those listed above are required.

PyPI

https://pypi.python.org/pypi/django-scim2

Source

https://github.com/15five/django-scim2

Documentation

https://django-scim2.readthedocs.io/

Development

This project uses Poetry to manage dependencies, etc. Thus to install the necessary tools when developing, run:

poetry install

Tests

https://github.com/15five/django-scim2/actions

Tests are typically run locally with tox (https://tox.wiki/). Tox will test all supported versions of Python and Django:

tox

To run the test suite with a single version of Python (the version you created the virtualenv with), run:

poetry run pytest tests/

Coverage

https://coveralls.io/github/15five/django-scim2

To run tests with coverage:

tox -e coverage

License

This library is released under the terms of the MIT license. Full details in LICENSE.txt file.

Extensibility

This library was forked and developed to be highly extensible. A number of adapters can be defined to control what different endpoints do to your resources. Please see the documentation for more details.

PLEASE NOTE: This app does not implement authorization and authentication. Such tasks are left for other apps such as Django OAuth Toolkit to implement.

Development Speed

Since this project is relatively stable, time is only dedicated to it on Fridays. Thus if you issue a PR, bug, etc, please note that it may take a week before we get back to you. Thanks you for your patience.

Credits

This project was forked from https://bitbucket.org/atlassian/django_scim

Download files

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

Source Distribution

django_scim2-0.22.0.tar.gz (26.1 kB view details)

Uploaded Source

Built Distribution

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

django_scim2-0.22.0-py3-none-any.whl (32.1 kB view details)

Uploaded Python 3

File details

Details for the file django_scim2-0.22.0.tar.gz.

File metadata

  • Download URL: django_scim2-0.22.0.tar.gz
  • Upload date:
  • Size: 26.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.13.13 Darwin/25.5.0

File hashes

Hashes for django_scim2-0.22.0.tar.gz
Algorithm Hash digest
SHA256 05f0efed7282bae0c49ab5a1f16604b6503dfe75cb2a1cb6da9983371ed9e46a
MD5 37507a8838ac341017367dfd0ceeb8f4
BLAKE2b-256 fa96f4bf98cd4a922694fa7c43d5e04e5becdb5f3f79423b733101c79f01e337

See more details on using hashes here.

File details

Details for the file django_scim2-0.22.0-py3-none-any.whl.

File metadata

  • Download URL: django_scim2-0.22.0-py3-none-any.whl
  • Upload date:
  • Size: 32.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.13.13 Darwin/25.5.0

File hashes

Hashes for django_scim2-0.22.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a332e0af3a48ea0a6f6ebd925ddb596d1cc159a3c1a08471d0d68fae16a6d1e8
MD5 9282bffa2df23dcd8928b16f06b53b3c
BLAKE2b-256 0a79855999cc230555a870ce353d8788b5600c6dd03fda8b3639484b0f9d014d

See more details on using hashes here.

Release history Release notifications | RSS feed

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