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://codecov.io/gh/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.21.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.21.0-py3-none-any.whl (32.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: django_scim2-0.21.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.21.0.tar.gz
Algorithm Hash digest
SHA256 f0389f311e03ea1403d1f309f45d3429a494537e0d8c07e0e619566bc456c2ab
MD5 13796135c01f510f8f229a05436b85e8
BLAKE2b-256 e76ac1887257e99c83fe7a92488c6d7376a8a91fdb1a7b3f8484a29d43227a62

See more details on using hashes here.

File details

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

File metadata

  • Download URL: django_scim2-0.21.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.21.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3467fbdf184d90db3811d7afdeecb006c684eea8e0d84e7731cb2c2f9310740f
MD5 1add67a6ffa1e2a1e1df590c347806b1
BLAKE2b-256 d1db4f642dad899ddffb0ee5f104739524c0f732a5cf13a295a473c01c2a6b75

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