Skip to main content

Django-HMAC

circle downloads version license docs

This module provides a middleware for HMAC signature Django views. It’s simply designed to check that a client is entitled to access routes, based on the fact that it must possess a copy of the secret key.

Key features:

  • HMAC Middleware

  • HMAC View decorators

  • Multiple keys for more services

  • Service restricted access

Small example

class SignedView(View):

    @decorators.auth
    def get(self, request):
        return HttpResponse("for all services")

    @decorators.auth(only=['userservice'])
    def post(self, request):
        return HttpResponse("Only for user service")

Dev

To run all tests

docker run -it -v $PWD:/src -w /src ikalnitsky/pythonista tox

Change Log

1.3.2

  • Fix - unicode key

1.3.1

  • Get rid of brackets in decorator

  • Bugfix: valid signature for resticted view passed validation

1.3.0

  • Merge validation of multiple and single signature to single method

  • Replace middleware classes to one single class HmacMiddleware

1.2.0

  • Decorators

1.0.5

  • Fix: Django HTTP headers

1.0.4

  • Fix: use base64.b64encode instead of base64.urlsafe_b64encode

1.0.2

  • Fix: HMAC_SECRET should be optional

  • GlobalHmacMiddleware and MultipleHmacMiddleware

0.0.1

  • Initial release including the core feature set

Metadata

Release files for djangohmacv3 1.3.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for djangohmacv3 1.3.4
File Size Uploaded
djangohmacv3-1.3.4.tar.gz 5.4 kB Details

Release files / djangohmacv3-1.3.4.tar.gz

Download URL djangohmacv3-1.3.4.tar.gz
Size 5.4 kB
Tags Source
SHA-256 checksum
How to use checksums
44d90e4312bf1a4a5637d21660a2e902dde63b5f3a0772e4d51e2113d5efe6c3
BLAKE2b-256 checksum
How to use checksums
f128dcf8ac6a7509664da150c3898a6297cd8a702e6d8a2438ecb2debf1c12f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.21.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

Release history Release notifications | RSS feed

This release

1.3.4 This release

1 release file

1.3.3

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