Crear usuario y password en django admin

595 views
Skip to first unread message

Pedro Muñoz

unread,
Jun 1, 2007, 4:13:40 AM6/1/07
to djan...@googlegroups.com
Hola

He estado explorando la gestion de usuarios en django y estoy atracado en un problema.

Al crear un usuario con la interface de administracion proporcionada por django, al querer crear un password me sale lo siguie.te Use '[algo]$[salt]$[hexdigest]' que a pesar de que he estado buscando en internet no encuentro la respuesta, los usuarios que creo no pueden acceder al  django admin.

Gracias de antemano.

--
Pedro Muñoz a.k.a Droper
APESOL: http://www.apesol.org
Blog: http://droper.utpinux.org

Julian Romero

unread,
Jun 1, 2007, 4:45:04 AM6/1/07
to djan...@googlegroups.com
Aunque no me queda claro qué es lo que quires hacer, te contesto.

algo = algoritmo
salt = sal :) (unos caracteres cualesquiera)
hexdigest = lo encriptado en hex

echa un ojo aquí:

http://code.djangoproject.com/browser/django/trunk/django/contrib/auth/models.py
Línea 13: check_password
Línea 151: set_password

En esos 2 métodos se ve cómo utilizan algo, salt y hexdigest.

--
Julián R.

Marcos Sánchez Provencio

unread,
Jun 1, 2007, 4:45:18 AM6/1/07
to djan...@googlegroups.com
¿Estás usando la última versión? Creo que estaba mejorado en la última.

De todos modos, a ver si esto vale:
http://www.bchesneau.info/articles/2006/09/14/create-a-django-password-in-command-line

import getpass
import sha, random


def make_random_password(length=10, allowed_chars='abcdefghjkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789'):
from random import choice
return ''.join([choice(allowed_chars) for i in range(length)])

salt = sha.new(str(random.random())).hexdigest()[:5]
p=getpass.getpass()

if p == "":
p=make_random_password()


password='%s$%s$%s' % ('sha1', salt, sha.new(salt+p).hexdigest())
print "hash",password,"for :",p

Pedro Muñoz

unread,
Jun 5, 2007, 5:50:33 PM6/5/07
to djan...@googlegroups.com
Hola

Gracias por las respuestas, lo resolví instalando la última versión de django mediante el svn, aunque me di un tiempito para trastear con el código que me pasaron.

Gracias!.

On 6/1/07, Marcos Sánchez Provencio <ra...@arrakis.es> wrote:

�Est�s usando la �ltima versi�n? Creo que estaba mejorado en la �ltima.


De todos modos, a ver si esto vale:
http://www.bchesneau.info/articles/2006/09/14/create-a-django-password-in-command-line

import getpass
import sha, random


def make_random_password(length=10, allowed_chars='abcdefghjkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789'):
    from random import choice
    return ''.join([choice(allowed_chars) for i in range(length)])

salt = sha.new(str(random.random())).hexdigest()[:5]
p=getpass.getpass()

if p == "":
    p=make_random_password()


password='%s$%s$%s' % ('sha1', salt, sha.new(salt+p).hexdigest())
print "hash",password,"for :",p


El vie, 01-06-2007 a las 03:13 -0500, Pedro Mu�oz escribi�:

> Hola
>
> He estado explorando la gestion de usuarios en django y estoy atracado
> en un problema.
>
> Al crear un usuario con la interface de administracion proporcionada
> por django, al querer crear un password me sale lo siguie.te Use
> '[algo]$[salt]$[hexdigest]' que a pesar de que he estado buscando en
> internet no encuentro la respuesta, los usuarios que creo no pueden
> acceder al  django admin.
>
> Gracias de antemano.
>
> --
> Pedro Mu�oz a.k.a Droper
Reply all
Reply to author
Forward
0 new messages