Friday 05 June 2009 1:26:32 am
Hi, If you look in the class user : kernel/classes/datatypes/ezuser/ezuer.php (line 1557 ) static function createHash( $user, $password, $site, $type, $hash = false )
{
$str = '';
if( $type == self::PASSWORD_HASH_MD5_USER )
{
$str = md5( "$user\n$password" );
}
else if ( $type == self::PASSWORD_HASH_MD5_SITE )
{
$str = md5( "$user\n$password\n$site" );
}
else if ( $type == self::PASSWORD_HASH_MYSQL )
{
$db = eZDB::instance();
$hash = $db->escapeString( $password );
$str = $db->arrayQuery( "SELECT PASSWORD( '$hash' )" );
$hashes = array_values( $str[0] );
$str = $hashes[0];
}
else if ( $type == self::PASSWORD_HASH_PLAINTEXT )
{
$str = $password;
}
else if ( $type == self::PASSWORD_HASH_CRYPT )
{
if ( $hash )
{
$str = crypt( $password, $hash );
}
else
{
$str = crypt( $password );
}
}
else // self::PASSWORD_HASH_MD5_PASSWORD
{
$str = md5( $password );
}
eZDebugSetting::writeDebug( 'kernel-user', $str, "ezuser($type)" );
return $str;
}
at the begining of class /// MD5 of password
const PASSWORD_HASH_MD5_PASSWORD = 1;
const PASSWORD_HASH_MD5_USER = 2;
const PASSWORD_HASH_MD5_SITE = 3;
const PASSWORD_HASH_MYSQL = 4;
const PASSWORD_HASH_PLAINTEXT = 5;
const PASSWORD_HASH_CRYPT = 6;
So in your case (the default case) the constant is PASSWORD_HASH_MD5_USER. So to force a new valid pass in the ezuser table you have to make a hash like $str = md5( "admin\n$MYPASSWORD" );
++
--
eZ c'est plus fort que toi !
http://www.ez-france.org
http://blog.plopix.net
@Novactive (http://www.novactive.com)
|