djangorestframework-auth0
=====
Warning
-------
**This library is in an early stage of development, use with caution, and -if you can- push some changes :)**
Library to simply use Auth0 token authentication in DRF within djangorestframework-jwt
This library let you to login an specific user based on the JWT Token returned by Auth0 Javascript libraries
Detailed documentation will be in the "docs" directory.
Installation
-----------
1. Using `pip` install the library cloning the repository with following command::
pip install rest_framework_auth0
Quick start
-----------
1. Add "django.contrib.auth to INSTALLED_APPS settings like this::
INSTALLED_APPS = [
...
'django.contrib.auth',
...
]
This will allow us to login as an specific user as well as auto-creating users when they don't exist
1. Add "rest_framework_auth0" to your INSTALLED_APPS **after** `rest_framework_jwt` setting like this::
INSTALLED_APPS = [
...,
'rest_framework_jwt',
'rest_framework_auth0',
]
2. Add `Auth0JSONWebTokenAuthentication` in your DEFAULT_AUTHENTICATION_CLASSES located at settings.py from your project::
REST_FRAMEWORK = {
...,
'DEFAULT_AUTHENTICATION_CLASSES': (
...,
'rest_framework_auth0.authentication.Auth0JSONWebTokenAuthentication',
),
}
3. Add your AUTH0_CLIENT_SECRET and AUTH0_CLIENT_ID in your settings.py file -must be the same secret and id than the frontend App-::
AUTH0 = {
'AUTH0_CLIENT_ID':'<YOUR_AUTH0_CLIENT_ID>', #make sure it's the same string that aud attribute in your payload provides
'AUTH0_CLIENT_SECRET':'<YOUR_AUTH0_CLIENT_SECRET>',
'AUTH0_ALGORITHM':'HS256', #default used in Auth0 apps
'JWT_AUTH_HEADER_PREFIX': 'JWT', #default prefix used by djangorestframework_jwt
}
4. Add the `Authorization` Header to all of your REST API request, prefixing JWT to your token::
Authorization: JWT <AUTH0_GIVEN_TOKEN>
5. Use the decorator `@token_required` in all views you want to protect (not_ready_yet)
6. That's it
Sample project
-----------
A sample project can be found on https://github.com/mcueto/djangorestframework-auth0_sample
Metadata
Release files for rest-framework-auth0 0.1.6
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 | |
|---|---|---|---|---|
| rest_framework_auth0-0.1.6.tar.gz | 7.1 kB | Without provenance | Details |
Release files / rest_framework_auth0-0.1.6.tar.gz
| Download URL | rest_framework_auth0-0.1.6.tar.gz |
|---|---|
| Size | 7.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1c8cb9b0383335dabd49e87250b69450c1ad42c5d3b2e8e3d35427c2dd91d501
|
|
BLAKE2b-256 checksum How to use checksums |
a756f744dd2249177bd371ed18d4379c5d060b9848d0337a989c7e75aca8e6a0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for rest-framework-auth0 0.1.6
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.