Skip to main content
=====
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

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)

Source distribution for rest-framework-auth0 0.1.6
File Size Uploaded
rest_framework_auth0-0.1.6.tar.gz 7.1 kB 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

Release history Release notifications | RSS feed

0.6.4

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.6

1 release file

0.4.5

1 release file

0.4.0

1 release file

0.2.1

1 release file

0.2.0

1 release file

0.1.9

1 release file

0.1.8

1 release file

0.1.7

1 release file

This release

0.1.6 This release

1 release file

0.1.5

1 release file

0.1.1

1 release file

0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page