Skip to main content

A Django Middleware to enalbe use of CIDR IP ranges in ALLOWED_HOSTS.

Project description

https://badge.fury.io/py/django-allow-cidr.svg https://travis-ci.org/mozmeao/django-allow-cidr.svg?branch=master

A Django Middleware to enalbe use of CIDR IP ranges in ALLOWED_HOSTS.

Documentation

The full documentation is at https://django-allow-cidr.readthedocs.io.

Quickstart

Install Django Allow CIDR:

pip install django-allow-cidr

Add the Middleware to your MIDDLEWARE_CLASSES (for Django < 1.10) or MIDDLEWARE settings. It should be the first in the list:

MIDDLEWARE = (
    'allow_cidr.middleware.AllowCIDRMiddleware',
    ...
)

Add the ALLOW_CIDR_NETS setting:

ALLOW_CIDR_NETS = ['192.168.1.0/24']

Profit!

Features

  • The normal ALLOWED_HOSTS values will also work as intended. This Middleware is intended to augment, not replace, the normal Django function.

  • If you do define ALLOW_CIDR_NETS and it has values, the middleware will capture what you have in ALLOWED_HOSTS, set ALLOWED_HOSTS to [‘*’] and take over validation of host headers.

  • The ALLOW_CIDR_NETS values can be any valid network definition for the netaddr package.

Running Tests

Does the code actually work?

source <YOURVIRTUALENV>/bin/activate
(myenv) $ pip install tox
(myenv) $ tox

Credits

Tools used in rendering this package:

History

0.1.0 (2018-02-16)

  • First release on PyPI.

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

django-allow-cidr-0.1.0.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

django_allow_cidr-0.1.0-py2.py3-none-any.whl (5.8 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file django-allow-cidr-0.1.0.tar.gz.

File metadata

File hashes

Hashes for django-allow-cidr-0.1.0.tar.gz
Algorithm Hash digest
SHA256 94b436b7ebf0bba9c1c4bddc28ada13aa86baa692c5c10c3012837bb8cf44a07
MD5 946a04dd81824c1bb235c302ffa8108c
BLAKE2b-256 917aff375fd6dfd69e7e7624af85fef76b9bacb3c9ef6424239042eacb57ed60

See more details on using hashes here.

File details

Details for the file django_allow_cidr-0.1.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_allow_cidr-0.1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 6b4e6f28109aebf06645e0218212acb2ba4ac6e98ee370fe9da0a90a4c0cf2b0
MD5 e179d80da918cb138e65d029211fb41e
BLAKE2b-256 103c2d0f5e423e22531f50a47053ea84abea48da06c0123923330d1617dcfd45

See more details on using hashes here.

Supported by

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