Marcelo, tem uma etapa intermediária nisso aí.

Você "pode" armazenar na base de dados a senha criptografada com sha ou md5.
O problema disso é que, se alguém capturar essa base de dados e tiver uma
rainbow-table[1], pode descobrir as senhas rapidinho. Por isso, recomenda-se
a utilização de uma função de salt[2] para criptografar a senha antes de
usar uma função de hash como md5 ou sha. Assim, com uma função criptográfica
específica para a sua aplicação, você dificulta a recuperação dessas senhas,
ainda que o camarada tenha toda sua tabela de usuários.

Na hora de autenticar, você pega a senha informada pelo usuário que quer se
autenticar, passa pro salt, utiliza o hash e compara com o valor armazenado
no banco. Creio que esse seja o raciocínio do Simple_Auth que o Marcelo
falou.

O Modulo Auth do Kohana 3 inclui uma função de salt configurável. Não sei
dizer das versões 2.x do Kohana.

[1] http://en.wikipedia.org/wiki/Rainbow_table
[2] http://en.wikipedia.org/wiki/Salt_%28cryptography%29

2010/1/15 Marcelo Preis Ferreira <[email protected]>

> Olha só, não sei ao certo o que você esta usando!
>
> md5 / sha1 , mas é assim você mandar gravar codificado
> "na base de dados" com um desses algoritimos!
>
> quando você recebe os dados do usuário,
> você deve codificar, para dai comparar.
>
> praticamente é isto! pode ser que
> as vezes voce tenha esquecido disso!
>
>
> Ou talves o kohana não faça isso!
>
> 2010/1/15 Diego Viana <[email protected]>
>
>> O estanho é ninguém mais ter passado por esse problema, será que só eu
>> uso o postgres? rsrs...
>>
>> Mas diz aí, como vcs fazem pra criptografar a senha do user na hora do
>> cadastro? ?
>>
>>
>>
>> On 15 jan, 13:25, Marcelo Rodrigo <[email protected]> wrote:
>> > Entra no site do Kohana e abra um chamado no dev.kohanaphp.com com o
>> > possível bug e sua solução proposta.
>> > Se você postar um DIFF do SVN os desenvolvedores agradecem.
>> >
>> > Atenciosamente,
>> >
>> > Marcelo Rodrigo
>> > smartFocus Tecnologiahttp://www.smartfocus.com.br
>> > Chat Google Talk: [email protected] Skype: mrodrigow MSN:
>> > [email protected]
>> >
>> > 2010/1/15 Diego Viana <[email protected]>
>>  >
>> > > Pessoal, eu fui passo a passo no modulo auth para ver onde ele estava
>> > > gerando aquela consulta ridícula pelo id...rs... Cheguei no mardito...
>> > > Ele estava consultado assim:
>> >
>> > > class Auth_ORM_Driver -> function login linha 86
>> > > $user = ORM::factory('user', $user);
>> >
>> > > mudei essa linha para;
>> > > $user = ORM::factory('user')->where($this->config['username'], $user)-
>> > > >find();
>> >
>> > > aquele $config['username'], eu setei o campo da tabela que ele deve
>> > > consultar no config do auth
>> >
>> > > Deu certo, parou de dar o erro, mas tive que mudar aqui tbm:
>> > > class Auth_ORM_Driver -> function password linha 203
>> > > $user = ORM::factory('user', $user);
>> >
>> > > mudada essas linhas, não deu mais o erro dele consultar pelo id, não
>> > > sei se é a solução mais adequada, mas funcionou, agora se é um bug na
>> > > versão, sei lá, estou começando agora com o kohana e esta é a minha
>> > > primeira aplicação usando ele...rsrs...
>> >
>> > > Agora um problema, o hash das senhas não batem, como eu faço para
>> > > cadastrar um usuário com o hash certo, por exemplo, eu tive que
>> > > imprimir o hash que o auth estava gerando ir lá na base de dados e
>> > > alterar na mão pra logar, pq o hash não estava batendo com o hash que
>> > > foi cadastrado...
>> >
>> > > Como vcs fazer para encriptar a senha na hora do cadastro do usuário?
>> >
>> > > On 15 jan, 11:20, Diego Viana <[email protected]> wrote:
>> > > > Noossa, no postgres ainda continua o mesmo erro...
>> >
>> > > > Ocorreu um erro de banco de dados enquanto se processava o
>> > > > procedimento requisitado. Por favor, revise o erro de banco de dados
>> > > > abaixo para maiores informacões.
>> >
>> > > >
>> C:/xampp/htdocs/teste_auth/system/libraries/drivers/Database/Pgsql.php
>> > > > [342]:
>> >
>> > > > Houve um erro no seguinte comando SQL: ERRO: sintaxe de entrada é
>> > > > inválida para integer: "dieglop" LINE 3: WHERE "users"."id" =
>> > > > 'dieglop' ^ - SELECT "users".* FROM users WHERE "users"."id" =
>> > > > 'dieglop' ORDER BY "users"."id" ASC LIMIT 1 OFFSET 0
>> >
>> > > > On 15 jan, 11:11, Diego Viana <[email protected]> wrote:
>> >
>> > > > > Pessoal, eu simplesmente troquei todo o modulo auth e não deu mais
>> o
>> > > > > erro do mysql, mas não loga, mas acredito que seja algum problema
>> de
>> > > > > criptografia, não sei se estou fazendo certo, mas estou fazendo
>> assim:
>> >
>> > > > > Eu limpo minha tabela user, e depois na hora de carregar a página
>> eu
>> > > > > faço um cadastro pra testar, assim:
>> >
>> > > > > $user = ORM::factory('user');
>> >
>> > > > > $user->email    = '[email protected]';
>> > > > > $user->username = 'dieglopviana';
>> > > > > $user->password = md5('senha');
>> >
>> > > > > if ($user->add(ORM::factory('role', 'login')) AND $user->save()){
>> >
>> > > > >    echo 'Cadastrou';
>> >
>> > > > > } else {
>> >
>> > > > >    echo 'Não cadastrou';
>> >
>> > > > > }
>> >
>> > > > > Depois eu mudo no config do auth o hash method para md5.
>> >
>> > > > > Está certo desta forma?
>> >
>> > > > > O erro que dá ao tentar logar é login failed;
>> >
>> > > > > if ($_POST){
>> > > > >    $username = $this->input->post('username');
>> > > > >    $password = $this->input->post('password');
>> >
>> > > > >    if (Auth::instance()->login($username, $password)){
>> > > > >       echo 'login ok';
>> > > > >    } else {
>> > > > >       echo 'login failed';
>> > > > >    }
>> >
>> > > > > }
>> >
>> > > > > Tá quase...rsrs... depois preciso testar no postgres, pois minha
>> > > > > aplicação está nele...
>> >
>> > > > > On 15 jan, 10:45, Diego Viana <[email protected]> wrote:
>> >
>> > > > > > Então Felipe, é estranho, pq no postgres ele chega a fazer a
>> > > consulta,
>> > > > > > o erro é que ele está tentando consultar o login do user no
>> campo
>> > > > > > id...rs, mas o model (ORM) funciona...
>> >
>> > > > > > Vou tentar pegar outra versão do kohana para testar...
>> >
>> > > > > > On 15 jan, 10:17, felipe moraes <[email protected]> wrote:
>> >
>> > > > > > > já estão definidas em outro arquivo ..
>> >
>> > > > > > > observe os arquivos que são loadados no php.ini ..
>> >
>> > > > > > > vc deve ter esquecido de fazer algum procedimento no plugin do
>> > > kohana
>> >
>> > > > > > > algo como nome de tabela, nome dos campos, nome de arquivos
>> > > inadequados, etc
>> >
>> > > > > > > ou pode ser um bug da versão que pegou
>> >
>> > > > > > > se fosse erro de módulo .. o Model nem funcionaria
>> >
>> > > --
>> > > Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana
>> Php"
>> > > dos Grupos do Google.
>> > > Para postar neste grupo, envie um e-mail para
>> [email protected].
>> > > Para cancelar a inscrição nesse grupo, envie um e-mail para
>>  > > 
>> [email protected]<kohana-php%[email protected]>
>> <kohana-php%[email protected]<kohana-php%[email protected]>
>> >
>>  > > .
>> > > Para obter mais opções, visite esse grupo em
>> > >http://groups.google.com/group/kohana-php?hl=pt-BR.
>>
>> --
>> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana
>> Php" dos Grupos do Google.
>> Para postar neste grupo, envie um e-mail para [email protected]
>> .
>>  Para cancelar a inscrição nesse grupo, envie um e-mail para
>> [email protected]<kohana-php%[email protected]>
>> .
>>
>> Para obter mais opções, visite esse grupo em
>> http://groups.google.com/group/kohana-php?hl=pt-BR.
>>
>>
>>
>>
>
> --
> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php"
> dos Grupos do Google.
> Para postar neste grupo, envie um e-mail para [email protected].
> Para cancelar a inscrição nesse grupo, envie um e-mail para
> [email protected]<kohana-php%[email protected]>
> .
> Para obter mais opções, visite esse grupo em
> http://groups.google.com/group/kohana-php?hl=pt-BR.
>
>


-- 
Anderson Marques Ferraz
UEFS - Engenharia de Computação - 2006.1
Linux user #500881 - http://counter.li.org/

I synchronize and I specialize and I classify so much/ Don't worry 'bout
dreaming because I don't sleep
--
Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php" dos Grupos do Google.
Para postar neste grupo, envie um e-mail para [email protected].
Para cancelar a inscrição nesse grupo, envie um e-mail para [email protected].
Para obter mais opções, visite esse grupo em http://groups.google.com/group/kohana-php?hl=pt-BR.

Responder a