Skip to main content

phpBB authentication in Python

Project description


Author: Santtu Pajukanta <>
Updated: 2010-03-31


phpbb-python implements the authentication part of phpBB3 in Python. This
enables Python-based web applications to authenticate against the user
account database of an existing phpBB3 discussion board.

A Django authentication backend is also provided. Tested with phpBB 3.0.7,
Django 1.0 and PostgreSQL 8.4. Other configurations may or may not work.

This documentation assumes extensive knowledge of the internals of both
Django and phpBB3. Not for the faint of heart. Use the Source, Luke.

Copyright and licensing

This is a very direct port of the login code in phpBB3 itself. Thus this
package can be considered a derivative work of phpBB3 and the license of
phpBB3 (GPLv2, sadly not "or later") applies.

However, should the phpBB3 software some day be relicensed to GPLv2 or
later, I won't stop you from using this package with the "later" licenses.
Therefore, files that I don't consider derivative of phpBB3 carry only my
copyright notice and the "GPLv2 or later" license boilerplate.

For legal stuff, see the files COPYING and LICENSE.

Basic usage (without Django)

from phpbb.auth.sql import setup
from phpbb.auth.auth_db import login_db

import psycopg2

conn = psycopg2.connect(

result, user_row = login_db("username", "password")
if result == "LOGIN_SUCCESS":
print "Multipass!"
print "You shall not pass!"

Usage with Django

Make sure the "phpbb" module is somewhere in your PythonPath. Add this
to your


"user": "",
"password": "",
"database": "",

Obviously, there's some filling in to do. Notice how we left ModelBackend in,
too. This way we can define superusers etc. in Django and just the peons in

There's a working (WORKSFORME) example in examples/hammertime. Have fun.


Q: Can I have a pony?
A: No, you can't have a pony.

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 (32.9 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page