# dj-saml-idp
This started as a fork of novapost/django-saml2-idp, distributed independently as dj-saml-idp.
The original project is at https://github.com/guitarmanvt/django-saml2-idp
dj-saml-idp implements the Identity Provider (IDP) side of the SAML 2.0 protocol and makes user authentication available to external applications.
This package only supports Django 1.9+. At this time, it’s only been tested with Django 1.9 & 1.11
# Development And Testing
The package uses a Docker container to support both development and tests. The container creates virtual environments for different Python versions as below:
Python 2.7 in /venv27
Python 3.7 in /venv37
These environments may be used for development and interactive testing.
To build and run the container, to get a bash prompt: `bash docker build -t dj-saml-idp:latest . docker-compose run --service-ports test `
To support use of IDEs (such as PyCharm) for development, the container can also run SSHD; run the command docker/run_sshd.sh at a bash prompt in the container. In the commands above, the –service-ports option is only needed if you intend to run sshd in the container.
The test runner is pytest. For release tests, we use tox to run the tests against different versions of Python and Django. The tests can be run inside the Docker container using tox:
`bash $ . /venv37/bin/activate $ tox `
# Release
First of all, create a new version of the package. We use bumpversion to handle updating all version strings, committing the changes and creating a new git tag automatically. To bump the package version use the following command with whichever part of the semantic version you’d like to update:
`$ bumpversion (major|minor|patch)`
for instance for a minor update, use (which should be the most common case):
`$ bumpversion minor`
You need the PyPI credentials for the mobify account to be able to release a new version and the build script is expecting it defined as an environment variable:
$ export PYPI_PASSWORD=supersecretpassword
Releasing a new version to PyPI is very simple. The first thing you need to do is make sure that all the test are passing and that the version in saml2idp/__init__.py is the one that you’d like to create on PyPI.
With that done, all you need to do is run the following commands:
`$ make release`
This will cleanup the build/ and dist/ directories, build a source package and a Python wheel. Both will then be uploaded to PyPI.
# License
Distributed under the MIT License.
# Release History
## 1.0.0 (2019-11-06)
Refactor development and test environment
Support Python 3
## 0.22.0 (2016-05-26)
Allow a redirect_to parameter to be passed to the logout view to redirect the user to after succesful logout instead of showing the logout page.
Introduce logging through structlog and provide more informative logging out put to make SAML flows easier to debug. Log messages are all logged under the saml2idp logger now.
Adding a new-style processor that carries a name attribute which allows custom templates for each processor during the SSO process. Custom templates are optional and will default to the same templates as before. The change is backwards compatible and handles old-style processors as previously.
## 0.21.2 (2016-04-18)
Switched from django.utils.importlib to Python’s standard importlib to work with Django 1.9.
Update the test setup to run tests against Django 1.9 in addition to all other versions of Django.
Metadata
Release files for dj-saml-idp 1.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| dj-saml-idp-1.2.1.tar.gz | 17.8 kB | Without provenance | Details for dj-saml-idp-1.2.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| dj_saml_idp-1.2.1-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details for dj_saml_idp-1.2.1-py2.py3-none-any.whl |
Total release size: 43.1 kB
Release files / dj-saml-idp-1.2.1.tar.gz
| Download URL | dj-saml-idp-1.2.1.tar.gz |
|---|---|
| Size | 17.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
995de6c92c8f7d5a80aeebf88a386dc81d68d6dd847e5bf502ec5e5e48eb771d
|
|
BLAKE2b-256 checksum How to use checksums |
9266cb471a6041e52fc0f59dd6b24e2e72be29246ec5afe158307606c62e7977
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.7.3
|
Release files / dj_saml_idp-1.2.1-py2.py3-none-any.whl
| Download URL | dj_saml_idp-1.2.1-py2.py3-none-any.whl |
|---|---|
| Size | 25.3 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
87a804caffe30f6da999b1c6963ca12c28ac35e82200a6cd8dc41c8658cf9cba
|
|
BLAKE2b-256 checksum How to use checksums |
e7b7edbeb3373a1514bc94c6b7dd932adbd6905274fcf11091f4d6907e39ded6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.7.3
|
Security for dj-saml-idp 1.2.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.