Provides easy integration of the HMAC signatures for your REST Django Applications.
Project description
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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.