[ejabberd] Ejabberd with Drupal

Simon Tennant simon at imaginator.com
Fri May 2 20:11:53 MSD 2008


Mickaël Rémond wrote:
> Hello,
> 
> I should be relatively easy to have Drupal and ejabberd use the same schema.
> I have also made several development regarding user db access to make 
> ejabberd support LDAP protocol (serve user through the LDAP protocol). 
> It works well.

There's still the cleartext (ejabberd) and hashed (Drupal) password problem.

Here is my current thinking:

Requirements and notes:

* Need to allow in-line registration
* Drupal uses password hashes
* I would like to use password hashes
* ejabberd stores passwords in clear

Registration:

* register on XMPP-client - creates user in ejabberd:users
* register on drupal - creates user on drupal:users
Proposal: change drupal to use the xmpp.module (if I understand 
correctly this then creates a user in drupal:users if authentication is 
successful against the ejabberd server).  Add an extra insert on 
successful drupal registration to add a user to the ejabbred:users table

Authentication:

* ejabberd queries ejabber:users for a cleartext password
* drupal, using xmpp.module will query ejabberd for the username and 
create a user account if one does not exist.  We optionally have the 
ability to ask for additional information an prevent a full login until 
it is provided

Password change:

* on ejabberd the password is changed to something in cleartext in 
ejabberd:users
* on drupal the password is changed to a hash in drupal:users
Proposal: ???

Delete account:

* Ejabberd: in-band account remove command deletes user from ejabberd:users
* Drupal: delete's user from table.
Proposal: disable in-band remove on ejabberd (is this possible?) and and 
on Drupal remove from ejabberd:users and drupal:users tables.


All seems terribly complicated!  Any thoughts on the password change option?

S.

-- 
Simon Tennant _____________________________________________

fixed: .uk +44 20 7043 6756          .de +49 89 420 955 854
   mob: .uk +44 78 5335 6047          .de +49 17 8545 0880



More information about the ejabberd mailing list