Project provide Django authentication middle ware using Firebase Authentication Service
pip install django-firebase-auth
- Credentials from file
FIREBASE_CREDENTIALS_FILE = '<YOUR FIREBASE CREDENTIALS PATH>' # 'firebase-credentials.json'
- or using credentials from json dict (where you can use as environment variables )
Using credentials from json dict
FIREBASE_CREDENTIALS_DICT = {
"type": "service_account",
"project_id": "<YOUR PROJECT ID>",
"private_key_id": "<YOUR PRIVATE KEY ID>",
"private_key": '<YOUR PRIVATE KEY>',
"client_email": "<CLIENT EMAIL>",
"client_id": "<CLIENT ID>",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "<CERT URL>"
}
INSTALLED_APPS = [
"...",
"django_firebase_auth",
]
REST_FRAMEWORK = {
"DEFAULT_AUTHENTICATION_CLASSES": (
"django_firebase_auth.firebase_auth.FirebaseAuthentication",
),
}
To generate a private key file for your service account:
- In the Firebase console, open Settings > Service Accounts.
- Click Generate New Private Key, then confirm by clicking Generate Key.
- Securely store the JSON file containing the key.
Add Firebase credentials to settings.py
Generate Firebase credentials from Firebase console
- Support supabase
- Optimize session management