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
~~~~~~~~~~~~~

.. sourcecode:: python

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

.. sourcecode::

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


.. |circle| image:: https://img.shields.io/circleci/project/thisissoon/djangohmac.svg
:target: https://circleci.com/gh/thisissoon/djangohmac

.. |downloads| image:: http://img.shields.io/pypi/dm/djangohmac.svg
:target: https://pypi.python.org/pypi/djangohmac

.. |version| image:: http://img.shields.io/pypi/v/djangohmac.svg
:target: https://pypi.python.org/pypi/djangohmac

.. |license| image:: http://img.shields.io/pypi/l/djangohmac.svg
:target: https://pypi.python.org/pypi/djangohmac

.. |docs| image:: https://readthedocs.org/projects/djangohmac/badge/?version=latest
:target: http://djangohmac.readthedocs.org/en/latest/?badge=latest

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 djangohmac 1.3.2

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

Source distribution (sdist)

Source distribution for djangohmac 1.3.2
File Size Uploaded
djangohmac-1.3.2.tar.gz 4.6 kB Details

Release files / djangohmac-1.3.2.tar.gz

Download URL djangohmac-1.3.2.tar.gz
Size 4.6 kB
Tags Source
SHA-256 checksum
How to use checksums
7e59ac211d8712a2a0fc8d142e1824385a1288194bfb90529e85430b763b7b72
BLAKE2b-256 checksum
How to use checksums
5685870f81b4a638e590cf8f732e4926a1aa097d9ec2b9433dcc50aff50b7397
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.3.2 This release

1 release file

1.3.1

1 release file

1.3.0

1 release file

1.2.1

1 release file

1.2.0

1 release file

1.0.5

1 release file

1.0.4

1 release file

1.0.3

1.0.2

1 release file

1.0.1

1 release file

0.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