Advertisement
TheBeege

Twisted DB-based auth

Feb 1st, 2014
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.09 KB | None | 0 0
  1.   # See twistedmatrix.com/documents/current/core/examples/dbcred.py for DBCredentialsChecker
  2.  
  3.   # SERVER SETUP
  4.   root = Resource()
  5.  
  6.   myresource = MyResource()
  7.  
  8.   pool = adbapi.ConnectionPool('MySQLdb',config.get('database','host'),config.get('database','user'),config.get('database','password'),config.get('database','database'))
  9.  
  10.   #checker = PasswordChecker()
  11.   checker = DBCredentialsChecker(pool.runQuery, query="SELECT username, password FROM user WHERE username = ?")
  12.   realm = HttpPasswordRealm(myresource)
  13.   p = Portal(realm)
  14.   p.registerChecker(checker)
  15.  
  16.   credentialFactory = BasicCredentialFactory("Chainsaw Rabbit Games")
  17.   protected_resource = HTTPAuthSessionWrapper(p, [credentialFactory])
  18.  
  19.   root.putChild('register', Registration())
  20.   root.putChild('example', protected_resource)
  21.   #root.putChild('login', Login())
  22.   factory = Site(root)
  23.   factory.protocol = HTTPChannel
  24.   #reactor.listenTCP(PORT, factory)
  25.   reactor.listenSSL(PORT, factory,
  26.                     ssl.DefaultOpenSSLContextFactory(
  27.                       'ssl/server.key', 'ssl/server.crt'))
  28.   reactor.run()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement