Instalar sistema de usuarios en trac (AccountManager)

Ahora vamos a cambiar el sistema de usuarios de trac que teníamos por defecto (el de htpasswd de apache) por uno que va a usar la base de datos de trac.

Lo primero será descargar el plugin y descomprimirlo en algún sitio del servidor. AccountManager Plugin

Lo descomprimimos y entramos en el directorio

root@epsilon-noc:/var/trac/capa8/plugins# unzip acct_mgr-0.4.4-15120.zip
root@epsilon-noc:/var/trac/capa8/plugins# cd acct_mgr-0.4.4/

Ahora vamos a generar el .egg y moveremos el .egg en el directorio de plugins de nuestro proyecto trac

root@epsilon-noc:/var/trac/capa8/plugins/acct_mgr-0.4.4# ./setup.py bdist_egg
root@epsilon-noc:/var/trac/capa8/plugins/acct_mgr-0.4.4# cp dist/TracAccountManager-0.4.4-py2.7.egg /var/trac/capa8/plugins/

Ahora añadiremos unas líneas en el fichero de configuración del proyecto trac

root@epsilon-noc:/var/trac/capa8/conf# vi trac.ini
[components]
; be sure to enable the component
acct_mgr.db.SessionStore = enabled
; choose one of the hash methods
acct_mgr.pwhash.htdigesthashmethod = enabled
acct_mgr.pwhash.htpasswdhashmethod = enabled
trac.web.auth.loginmodule = disabled

[account-manager]
password_store = SessionStore
; choose one of the hash methods with corresponding supplemental option
hash_method = HtDigestHashMethod
db_htdigest_realm = TracDbRealm
;hash_method = HtPasswdHashMethod
;db_htpasswd_hash_type = sha

Antes de guardar el fichero, nos aseguramos que tenemos la sesión iniciada con el administrador de trac, ya que sino nos dará algunos dolores de cabeza :P

Vamos a admin en el trac > Conectores y veremos que ahora aparece TracAccountManager 0.4.3, lo desplegamos, lo marcamos todo y le damos a aplicar los cambios.

Si nos fijamos, ahora en admin aparece un nuevo menú a la izquierda que es accounts y en users añadimos los usuarios que queramos que accedan en el trac.

Ahora vamos al fichero de configuración de apache y comentamos las líneas referentes a la Location login

#    < Location /login >
#        AuthType Basic
#        AuthName "Servidor trac Capa8"
#        AuthUserFile /var/trac/users.conf
#        Require valid-user
#    < /Location >

Guardamos y recargamos apache.

Si todo va bien, ahora sigue apareciendo login, pero al momento de pulsar nos sale un bonito menú de login! :D

Recuerdo, que tal como se dijo en el post anterior, que para añadir un usuario al rol de administrador se usaba ésta línea

root@epsilon-noc:/var/trac/capa8/conf# trac-admin /var/trac/capa8 permission add blackhold TRAC_ADMIN

Aunque también se puede hacer por la interfaz web en admin > permisos :P

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *

Aquest lloc utilitza Akismet per reduir els comentaris brossa. Apreneu com es processen les dades dels comentaris.