djangosaml2
===========

![CI build](https://github.com/peppelinux/djangosaml2/workflows/djangosaml2/badge.svg)
![pypi](https://img.shields.io/pypi/v/djangosaml2.svg)
[![Downloads](https://pepy.tech/badge/djangosaml2/month)](https://pepy.tech/project/djangosaml2)
![Python version](https://img.shields.io/badge/license-Apache%202-blue.svg)
![Django versions](https://img.shields.io/pypi/djversions/djangosaml2)
![Documentation Status](https://readthedocs.org/projects/djangosaml2/badge/?version=latest)
![License](https://img.shields.io/badge/python-3.7%20%7C%203.8%20%7C%203.9%20%7C%203.10-blue.svg)


A Django application that builds a Fully Compliant SAML2 Service Provider on top of PySAML2 library.
 Djangosaml2 protects your project with a SAML2 SSO Authentication.


Features:

- HTTP-REDIRECT SSO Binding
- HTTP-POST SSO Binding
- SLO POST and HTTP-REDIRECT Binding
- Discovery Service
- embedded Wayf page with customizable html template
- IdP Hinting
- IdP Scoping
- Samesite cookie


Please consult the [official Documentation of djangosaml2](https://djangosaml2.readthedocs.io) to get started.


Contributing
============

Please open Issues to start debate regarding the requested
features, or the patch that you would apply. We do not use
a strict submission format, please try to be more concise as possibile.

The Pull Request MUST be done on the dev branch, please don't
push code directly on the master branch.


Special thanks
==============

This is a community-driven project, born as a
fork and maintained by different authors at different times, such as:

- [Lorenzo Gil Sanchez](https://github.com/lorenzogil)
- [Jozef knaperek](https://github.com/knaperek)
