TypeError/secure.py
Secure headers and cookies for Python web frameworks
repo name | TypeError/secure.py |
repo link | https://github.com/TypeError/secure.py |
homepage | https://secure.rtfd.io |
language | Python |
size (curr.) | 65 kB |
stars (curr.) | 281 |
created | 2018-11-27 |
license | MIT License |
secure.py
secure.py đź”’ is a lightweight package that adds optional security headers and cookie attributes for Python web frameworks.
Supported Python web frameworks:
aiohttp, Bottle, CherryPy, Django, Falcon, Flask, hug, Masonite, Pyramid, Quart, Responder, Sanic, Starlette, Tornado
Install
pip:
$ pip install secure
Pipenv:
$ pipenv install secure
After installing secure:
from secure import SecureHeaders, SecureCookie
secure_headers = SecureHeaders()
secure_cookie = SecureCookie()
Secure Headers
Example
secure_headers.framework(response)
Default HTTP response headers:
Strict-Transport-Security: max-age=63072000; includeSubdomains
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Referrer-Policy: no-referrer, strict-origin-when-cross-origin
Cache-control: no-cache, no-store, must-revalidate, max-age=0
Pragma: no-cache
Expires: 0
Secure Cookie
Example
secure_cookie.framework(response, name="spam", value="eggs")
Default Set-Cookie HTTP response header:
Set-Cookie: spam=eggs; Path=/; secure; HttpOnly; SameSite=lax
Documentation
Please see the full set of documentation at https://secure.readthedocs.io