File: __init__.py

package info (click to toggle)
python-pyramid 2.0%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 3,612 kB
  • sloc: python: 41,526; makefile: 28
file content (28 lines) | stat: -rw-r--r-- 859 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from html import escape

from pyramid.response import Response
from pyramid.security import view_execution_permitted


def x_view(request):  # pragma: no cover
    return Response('this is private!')


def test(context, request):
    # should return false
    msg = 'Allow ./x? %s' % repr(
        view_execution_permitted(context, request, 'x')
    )
    return Response(escape(msg))


def includeme(config):
    from pyramid.authentication import AuthTktAuthenticationPolicy
    from pyramid.authorization import ACLAuthorizationPolicy

    authn_policy = AuthTktAuthenticationPolicy('seekt1t', hashalg='sha512')
    authz_policy = ACLAuthorizationPolicy()
    config.set_authentication_policy(authn_policy)
    config.set_authorization_policy(authz_policy)
    config.add_view(test, name='test')
    config.add_view(x_view, name='x', permission='private')