Skip to main content

Python Social Authentication, Django integration, Google compliant fork

Project description

Compliant Social App Django

This is a Google compliant fork of the Django component of the python-social-auth ecosystem, it implements the needed functionality to integrate social-auth-core in a Django based project.

Python Social Auth - Django

Python Social Auth is an easy to setup social authentication/registration mechanism with support for several frameworks and auth providers.

Django version

This project will focus on the currently supported Django releases as stated on the Django Project Supported Versions table.

Backward compatibility with unsupported versions won't be enforced.

Documentation

Compliant Social App Django provides three key features required to comply with Google's standards for applications that ask for restricted scopes such as the ability to read gmail inboxes:

  1. Storing the access and refresh tokens encrypted in the database.
  2. The encryption of those tokens being backed by KMS.
  3. Audit logs that register the access to and revocation of those same tokens.

An Audit Logger object must be provided to the app, and must inherit from the abstract base audit logger provided. We also provide an alternative Google backend that uses the audit logger.

KMS must be set up independently, and you must specify a KMS_FIELD_KEY in settings; typically the alias of your KMS key.

If moving to this package from the main social-app-django package the db migrations will also handle the migration of tokens, with encryption, into their appropriate fields.

Core project documentation is available at http://python-social-auth.readthedocs.org/.

Setup

$ pip install compliant-social-app-django

Versioning

This project follows Semantic Versioning 2.0.0.

This fork's versioning will match the major version of the original package version upon which it is based

Building and Releasing

To release a new version use these steps:

  1. Increment the version number in __init.py__
  2. Update the CHANGELOG.md with description of the changes in the release (and commit)
  3. Remove the build and dist directories completely
    rm -rf build dist
    
  4. Build the source distribution:
    python setup.py sdist
    
  5. Push the distribution
    python -m twine upload dist/*
    
  6. Tag the release and push the tag

License

This project follows the BSD license. See the LICENSE for details.

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

compliant-social-app-django-4.4.0.tar.gz (29.2 kB view hashes)

Uploaded Source

Supported by

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