# Compliant Social App Django
This is a Google compliant fork of the [Django](https://www.djangoproject.com/) component of the
[python-social-auth ecosystem](https://github.com/python-social-auth/social-core),
it implements the needed functionality to integrate
[social-auth-core](https://github.com/python-social-auth/social-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](https://www.djangoproject.com/download/#supported-versions).
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
```shell
$ pip install compliant-social-app-django
```
## Versioning
This project follows [Semantic Versioning 2.0.0](http://semver.org/spec/v2.0.0.html).
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
```bash
rm -rf build dist
```
4. Build the source distribution:
```bash
python setup.py sdist
```
5. Push the distribution
```bash
python -m twine upload dist/*
```
6. Tag the release and push the tag
## License
This project follows the BSD license. See the [LICENSE](LICENSE) for details.
Raw data
{
"_id": null,
"home_page": "https://github.com/RightlyGroup/compliant-social-app-django",
"name": "compliant-social-app-django",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "django,social auth",
"author": "Rightly",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/e1/f1/6ec1f3df5b66b7b5fbc196d727c228198cab0b65b1eaac03d55345b8f478/compliant-social-app-django-4.4.0.tar.gz",
"platform": null,
"description": "# Compliant Social App Django\n\nThis is a Google compliant fork of the [Django](https://www.djangoproject.com/) component of the\n[python-social-auth ecosystem](https://github.com/python-social-auth/social-core),\nit implements the needed functionality to integrate\n[social-auth-core](https://github.com/python-social-auth/social-core)\nin a Django based project.\n\n## Python Social Auth - Django\n\nPython Social Auth is an easy to setup social authentication/registration\nmechanism with support for several frameworks and auth providers.\n\n## Django version\n\nThis project will focus on the currently supported Django releases as\nstated on the [Django Project Supported Versions table](https://www.djangoproject.com/download/#supported-versions).\n\nBackward compatibility with unsupported versions won't be enforced.\n\n## Documentation\n\nCompliant Social App Django provides three key features required to comply with Google's standards for applications that\nask for restricted scopes such as the ability to read gmail inboxes:\n\n1. Storing the access and refresh tokens encrypted in the database.\n2. The encryption of those tokens being backed by KMS.\n3. Audit logs that register the access to and revocation of those same tokens.\n\nAn Audit Logger object must be provided to the app, and must inherit from the abstract base audit logger provided. We\nalso provide an alternative Google backend that uses the audit logger.\n\nKMS must be set up independently, and you must specify a KMS_FIELD_KEY in settings; typically the alias of your KMS key.\n\nIf moving to this package from the main social-app-django package the db migrations will also handle the migration of\ntokens, with encryption, into their appropriate fields.\n\nCore project documentation is available at http://python-social-auth.readthedocs.org/.\n\n## Setup\n\n```shell\n$ pip install compliant-social-app-django\n```\n\n## Versioning\n\nThis project follows [Semantic Versioning 2.0.0](http://semver.org/spec/v2.0.0.html).\n\nThis fork's versioning will match the major version of the original package version upon which it is based\n\n## Building and Releasing\n\nTo release a new version use these steps:\n\n1. Increment the version number in `__init.py__`\n2. Update the `CHANGELOG.md` with description of the changes in the release (and commit)\n3. Remove the `build` and `dist` directories completely\n ```bash\n rm -rf build dist\n ```\n4. Build the source distribution:\n ```bash\n python setup.py sdist\n ```\n5. Push the distribution\n ```bash\n python -m twine upload dist/*\n ```\n6. Tag the release and push the tag\n\n## License\n\nThis project follows the BSD license. See the [LICENSE](LICENSE) for details.\n",
"bugtrack_url": null,
"license": "BSD",
"summary": "Python Social Authentication, Django integration, Google compliant fork",
"version": "4.4.0",
"project_urls": {
"Homepage": "https://github.com/RightlyGroup/compliant-social-app-django"
},
"split_keywords": [
"django",
"social auth"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e1f16ec1f3df5b66b7b5fbc196d727c228198cab0b65b1eaac03d55345b8f478",
"md5": "2b1a9f3782f1e7051657c0b76ebb9f5e",
"sha256": "2d14fe40a2bb7b4b80134f91b6274c82c172c8f19d723ee6e1ccf86d810fd15b"
},
"downloads": -1,
"filename": "compliant-social-app-django-4.4.0.tar.gz",
"has_sig": false,
"md5_digest": "2b1a9f3782f1e7051657c0b76ebb9f5e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 29232,
"upload_time": "2024-03-11T10:30:16",
"upload_time_iso_8601": "2024-03-11T10:30:16.325964Z",
"url": "https://files.pythonhosted.org/packages/e1/f1/6ec1f3df5b66b7b5fbc196d727c228198cab0b65b1eaac03d55345b8f478/compliant-social-app-django-4.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-11 10:30:16",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "RightlyGroup",
"github_project": "compliant-social-app-django",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [
{
"name": "social-auth-core",
"specs": [
[
">=",
"4.1.0"
]
]
}
],
"tox": true,
"lcname": "compliant-social-app-django"
}