Skip to main content

Debug Authentication Policy for Pyramid

Project description

Debug Authentication Policy for Pyramid. Provide a simple and standard way to define the pyramid principals from the HTTP client.

Installation

Install using setuptools, e.g. (within a virtualenv):

$ pip install pyramid_debugauth

Setup

Once pyramid_debugauth is installed, you can define a authentication policy with config.set_authentication_policy.

In your Pyramid project:

from pyramid.authorization import ACLAuthorizationPolicy
from pyramid_debugauth import DebugAuthenticationPolicy

config = Configurator(.....)
config.set_authentication_policy(DebugAuthenticationPolicy())
config.set_authorization_policy(ACLAuthorizationPolicy())

Usage

The DebugAuthenticationPolicy allows a client to impersonate any user and specify any number of principals desired using the standard Authorization http header and a non-standard auth-scheme Debug (RFC 7235):

Authorization: *Debug* user_id [principal_1] [principal_2] ...

With common http clients:

curl:

http://localhost:6543 -H ‘Authorization: Debug bob admin

http:

http://localhost:6543Authorization: Debug bob admin

Development

Running tests:

$ virtualenv venv
$ . venv/bin/activate
(venv)$ pip install -r requirements-test.txt
(venv)$ nosetests

Project details


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