Skip to main content

An identity policy for morepath using itsdangerous.

Project description

Usage

import morepath
from more.itsdangerous import IdentityPolicy

class App(morepath.App):
    pass

@App.identity_policy()
def get_identity_policy():
    return IdentityPolicy()

@App.verify_identity()
def verify_identity(identity):
    # trust the identity established by the identity policy (we could keep
    # checking if the user is really in the database here - or if it was
    # removed in the meantime)
    return True

See http://morepath.readthedocs.org/en/latest/security.html to learn more about Morepath’s security model and and have a look at the commented source code:

https://github.com/morepath/more.itsdangerous/blob/master/more/itsdangerous/identity_policy.py

The IdentityPolicy class is meant to be extended because everyone has differing needs. It simply provides a way to store the identity as a signed cookie, using itsdangerous.

Usage in Development

By default, the cookies created by more.itsdangerous are HttpOnly and Secure.

If you have differing needs or if you are running a development server you might have to change the identity policy’s configuration:

@App.identity_policy()
def get_identity_policy():
    # make the cookies work under http, not just https
    return IdentityPolicy(secure=False)

Note that this should only be used in development. In this day and age you do not want to transmit cookies over http!

Run the Tests

Install tox and run it:

pip install tox
tox

Limit the tests to a specific python version:

tox -e py27

Conventions

More Itsdangerous follows PEP8 as close as possible. To test for it run:

tox -e pep8

More Itsdangerous uses Semantic Versioning

Build Status

Build Status

Coverage

Project Coverage

Latests PyPI Release

Latest PyPI Release

License

more.itsdangerous is released under the revised BSD license

Changelog

0.0.2 (2016-04-18)

  • Adds compatibility with Morepath 0.14+. [henri-hulski]

0.0.1 (2015-04-29)

  • Initial release [href]

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

more.itsdangerous-0.0.2.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

more.itsdangerous-0.0.2-py2-none-any.whl (8.8 kB view details)

Uploaded Python 2

File details

Details for the file more.itsdangerous-0.0.2.tar.gz.

File metadata

File hashes

Hashes for more.itsdangerous-0.0.2.tar.gz
Algorithm Hash digest
SHA256 c0352ec418cb5f356261d88c600c18f7d7627895d357fe2f933fe643e42ba0f2
MD5 7c8529697379cfb247b13d556980bc6f
BLAKE2b-256 5622a423e8d148b628cf62f8bc8ec63ffdbda62258783e68c743c987321e68f0

See more details on using hashes here.

File details

Details for the file more.itsdangerous-0.0.2-py2-none-any.whl.

File metadata

File hashes

Hashes for more.itsdangerous-0.0.2-py2-none-any.whl
Algorithm Hash digest
SHA256 711867e2e480cce7c1cf8a4053a295a005f7c8ed6f58cf0957ed2caf3fbf28d1
MD5 d9f17ed04d43f6499909e4acdf2fe9db
BLAKE2b-256 fad236db86cdd047a31d85b84b4b73ca488be3c220b60d7d870437856f875a88

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