Skip to main content

Control Clients Apps access over REST APIs with ApiKeys

Project description

djangorestframework-apicontrol

This is an App intended to control Clients Apps access over REST APIs.

Notice

Please be carefull with the use of this package, and remember to backup your database before apply each migration.

Permission Usage (APIKey)

you only has to import the permission and use it in your rest_framework views, or in your settings.py file, as you prefer. e.g:

"""Contact views."""
from rest_framework import viewsets
from rest_framework_apicontrol.permissions import HasApiKeyPermission
from .models import (
    ContactInfo
)
from .serializers import (
    ContactInfoSerializer
)


class ContactInfoViewSet(viewsets.ModelViewSet):
    queryset = ContactInfo.objects.all()
    serializer_class = ContactInfoSerializer
    permission_classes = [HasApiKeyPermission]
    authentication_classes = []

All the calls to this endpoint MUST HAVE a header called Api-Key with the value of an App(App model in Django admin site)

Models

This app comes with several models & mixins which provide useful common fields & functions, the models it provides are the following:

models diagram

To add those models to your app the only you need to do is add rest_framework_apicontrol to your project INSTALLED_APPS setting & then migrate your app.

INSTALLED_APPS = [
    # Django default modules
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # Security & multi-app management
    'rest_framework_apicontrol',
    # Your project apps
    '...',
]

Notice: This project's models needs PostgreSQL as database because the use of JSONField in some of it's model fields.

Donate

If this project is useful for you, please donate some dollars to help me improve this & others projects.

My Paypal - http://paypal.me/mcuetodeveloper

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

rest-framework-apicontrol-0.8.4.tar.gz (22.7 kB view details)

Uploaded Source

Built Distribution

rest_framework_apicontrol-0.8.4-py3-none-any.whl (30.5 kB view details)

Uploaded Python 3

File details

Details for the file rest-framework-apicontrol-0.8.4.tar.gz.

File metadata

  • Download URL: rest-framework-apicontrol-0.8.4.tar.gz
  • Upload date:
  • Size: 22.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.8.6 Linux/5.8.0-7630-generic

File hashes

Hashes for rest-framework-apicontrol-0.8.4.tar.gz
Algorithm Hash digest
SHA256 261e3f5e56b4c3304b7cc053405486333c7036a7a7daed634838df7443881f8c
MD5 92dbb5c368ad6d439fc34373cef3fa5a
BLAKE2b-256 1122d8ad0997e1f09a21c54e58854f6baa0033ed761ef74b7067116fe6d91c5a

See more details on using hashes here.

File details

Details for the file rest_framework_apicontrol-0.8.4-py3-none-any.whl.

File metadata

File hashes

Hashes for rest_framework_apicontrol-0.8.4-py3-none-any.whl
Algorithm Hash digest
SHA256 c9a1fa6ba3b3db5366ff2c971773ce57a0fdca939e88b5eb05fa012739278c09
MD5 248acfe029ce8d88cabcf0201c518ad8
BLAKE2b-256 5854857751602a82ba3a05964ee8224eea70260368cf0327ec37429c92430bd1

See more details on using hashes here.

Supported by

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