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
29
30
31
32
33
34
35
|
from paste.twisted_wsgi import serve_application
from paste import echo, login
def twisted_serve(app):
serve_application(
app, port=8080)
class AuthTest(login.Authenticator):
def check_auth (self, username, password):
print "checking", username, password
return username == password
def logincheck (wrapped_app):
def wrapping_app(environ, start_response):
k = environ.keys()
k.sort()
print "environ", k
if environ.has_key('REMOTE_USER'):
return wrapped_app(environ, start_response)
else:
start_response('401 Unauthorized',
[('Content-type','text/plain')])
return ['Not logged in.']
return wrapping_app
if __name__ == '__main__':
app = echo.application
app = logincheck (app)
app = login.middleware(
app, http_login=1, authenticator=AuthTest, secret='foo')
twisted_serve (app)
|