Ignore:
Timestamp:
06/13/17 19:28:43 (7 years ago)
Author:
nanardon
Message:

Allow to choose crypt algorythm per configuration

Location:
trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Ldap/User.pm

    r1983 r2041  
    276276    my ($self, $clear_pass) = @_; 
    277277 
    278     my @salt_char = (('a' .. 'z'), ('A' .. 'Z'), (0 .. 9), '/', '.'); 
    279     my $salt = join('', map { $salt_char[rand(scalar(@salt_char))] } (1 .. 8)); 
    280278    # openldap use prefix to identify encryption passwd 
    281279    # {CRYPT} is system dependant, eg use crypt from system 
     
    283281    # as we use perl crypt() which does the same 
    284282    # This code will have to be changed if we use openldap on other UNIX 
    285     my $md5 = '{CRYPT}' . crypt($clear_pass, '$1$' . $salt); 
     283    my $crypt = '{CRYPT}' . $self->base->passCrypt($clear_pass); 
    286284 
    287285    my ($lm, $nt) = ntlmgen $clear_pass; 
    288286 
    289287    my $res = $self->set_fields( 
    290         userPassword    => $md5, 
     288        userPassword    => $crypt, 
    291289        sambaLMPassword => $lm, 
    292290        sambaNTPassword => $nt, 
  • trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Objects.pm

    r2005 r2041  
    543543    my ($self, $clear_pass) = @_; 
    544544    if (my $attribute = $self->base->attribute($self->type, 'userPassword')) { 
    545         my @salt_char = (('a' .. 'z'), ('A' .. 'Z'), (0 .. 9), '/', '.'); 
    546         my $salt = join('', map { $salt_char[rand(scalar(@salt_char))] } (1 .. 8)); 
    547         my $res = $self->set_fields($attribute->iname, crypt($clear_pass, '$1$' . $salt)); 
     545        my $res = $self->set_fields($attribute->iname, $self->base->passCrypt($clear_pass)); 
    548546        $self->base->log(LA_NOTICE, 'Mot de passe changé pour %s', $self->id) 
    549547            if($res); 
  • trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql/User.pm

    r2040 r2041  
    19471947        } 
    19481948 
    1949         my @salt_char = (('a' .. 'z'), ('A' .. 'Z'), (0 .. 9), '/', '.'); 
    1950         my $salt = join('', map { $salt_char[rand(scalar(@salt_char))] } (1 .. 8)); 
    1951         my $res = $self->set_fields($field, crypt($clear_pass, '$1$' . $salt)); 
     1949        my $res = $self->set_fields($field, $self->base->passCrypt($clear_pass)); 
    19521950        if ($res) { 
    19531951            if ($self->base->get_global_value('rsa_public_key')) { 
Note: See TracChangeset for help on using the changeset viewer.