phpbb (2.x) authentication backend

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
from django.contrib.auth.models import User
import hashlib

class PhpbbAuthenticationBackend:
    def authenticate(self, username=None, password=None):
        try:
            # phpbb 2.x encodes passwords as plain md5 hashes, no salt
            pass_md5 = hashlib.md5(password).hexdigest()
            user = User.objects.get(username=username, password=pass_md5)
            
            # get rid of the old-style password, get with the new style!
            user.set_password(password)
            user.save()

            return user
        except User.DoesNotExist:
            return None

More like this

  1. Old MySQL Password Hash by tback 4 years ago
  2. No Password E-mail by jefferya 4 years, 3 months ago
  3. Email or username authentication with masquerading by petrilli 3 years, 11 months ago
  4. Support for permissions for anonymous users in django ModelBackend by jb 1 year, 6 months ago
  5. drupal7 password check by bram 11 months, 1 week ago

Comments

mk (on July 25, 2008):

You'll be delighted to hear that the code in django.contrib.auth does exactly that already. See User.check_password in django/contrib/auth/models.py around line 180 (current SVN trunk, r8069)

#

bram (on July 25, 2008):

sigh here I was thinking I had done something useful :)

#

slolkikize (on July 12, 2012):

Здравствуйте посетители! Предложим вашим гостям в этом месяце дешевый набор [url=http://www.djalux.ru/dj-ceni]диджей с аппаратурой[/url] диджея на свадьбу на Алексеевской, не при участии удобного заказа [url=http://www.djalux.ru/studio-zvukozapisi]тамада на мероприятие[/url] на нашем клубном сайте. Желаем успехов!

#

slolkikize (on July 27, 2012):

Доброе утро посетители форума! Горим желанием дать после этой недели праздничный дозаказ [url=http://www.djalux.ru/humor]ведущий на новый год[/url] тамады на свадьбу на Аэропорту, не под патронажем удобного вызова [url=http://www.djalux.ru/humor]тамада на вечеринку[/url] на вашем клубном сайте. Желая отличного здоровья!

#

(Forgotten your password?)