Pq vc está concatenando o "md5" com a senha? talvez usando a função não precisa disso.
2012/11/16 Renato Ricci <[email protected]> > Já tentei assim como voce falou Jacson.. mas sem sucesso.. Ele até cria o > usuário.. mas não autentica.. > Creio que eu vou aderir as dicas do Bruno e do João Paulo e fazer a > autenticação direto no banco... > > Mais uma vez obrigado! > > Renato > > > Em 16 de novembro de 2012 08:30, Crauss, Jacson <[email protected]>escreveu: > > E se tu fizer, Renato, a na tua trigger o seguinte: >> >> Trigger Function: >> DECLARE >> v_senha varchar(); >> BEGIN >> select Md5(new.usu_senha) into v_senha; >> execute 'CREATE ROLE ' || new.usu_usuario || ' NOINHERIT LOGIN >> UNENCRYPTED PASSWORD ' || quote_literal(v_senha) ; >> return new; >> END; >> >> A parte em vermelha eu mudei da que tu tinha colado. >> >> >> 2012/11/14 Joao Paulo Rieg <[email protected]> >> >>> ** >>> Correto Renato! >>> >>> A senha que envio não é criptografada, pois na tela de cadastro que fiz >>> não criptografo a mesma. >>> Na verdade, a tabela de usuarios que fiz é para fins de obter >>> informações mais detalhadas do mesmo. >>> O login do sistema nao faço pela tabela e sim pela role. se a role >>> existe e o usuario digitar a senha correta, ele loga no banco e terá acesso >>> as tabelas de acordo com as permissões concedidas à role. Neste caso o >>> próprio banco vai administrar essa questão das permissões aos usuarios >>> logados. >>> Na questão de criptografia da senha,... o banco faz a >>> criptografia automatica quando crio/modifico a role e também no login. >>> >>> Att. Rieg >>> >>> >>> >>> >>> >>> Olá João Paulo.. tudo bem? >>> no meu caso, a senha já está criptografada em MD5.. se eu fizer como vc >>> fez, eu penso que a senha será criptografada 2 vezes.. >>> Nos eu caso NEW.passwd não esta criptografado né? ou seja.. é um clear >>> password. correto? >>> >>> valeu! >>> >>> Renato >>> >>> >>> Em 14 de novembro de 2012 16:06, Joao Paulo Rieg < >>> [email protected]> escreveu: >>> >>>> ** >>>> Olá pessoal.. >>>> >>>> >>>> Tenho uma tabela de usuários onde armazeno o usuário e senha de acesso >>>> do sistema. A senha já está criptografada com MD5. >>>> >>>> Eu preciso replicar esses usuários para a tabela nativa de usuários do >>>> PostgreSQL através do comando create role e manter a mesma senha. Já tentei >>>> o comando abaixo, mas sem sucesso: >>>> >>>> Trigger Function: >>>> DECLARE >>>> v_senha varchar(); >>>> BEGIN >>>> v_senha := 'md5' || (new.usu_senha); >>>> execute 'CREATE ROLE ' || new.usu_usuario || ' NOINHERIT LOGIN >>>> UNENCRYPTED PASSWORD ' || quote_literal(v_senha) ; >>>> return new; >>>> END; >>>> >>>> Alguma sugestão? >>>> >>>> Obrigado, >>>> Renato >>>> >>>> >>>> Tenho uma trigger que está assim: >>>> >>>> CREATE OR REPLACE FUNCTION gravar_role() >>>> RETURNS trigger AS >>>> $BODY$ >>>> DECLARE >>>> SQL TEXT; >>>> BEGIN >>>> IF TG_OP = 'INSERT' THEN >>>> SQL = 'CREATE ROLE '||NEW.usuario||' LOGIN PASSWORD >>>> '||quote_literal(NEW.passwd)||' INHERIT; '; >>>> EXECUTE SQL; >>>> RETURN NEW; >>>> ELSEIF TG_OP = 'UPDATE' THEN >>>> SQL = 'ALTER ROLE '||NEW.usuario||' PASSWORD >>>> '||quote_literal(NEW.passwd)||'; '; >>>> EXECUTE SQL; >>>> RETURN NEW; >>>> ELSEIF TG_OP = 'DELETE' THEN >>>> SQL = 'DROP ROLE '||OLD.usuario||'; '; >>>> EXECUTE SQL; >>>> RETURN OLD; >>>> END IF; >>>> END; >>>> $BODY$ >>>> LANGUAGE plpgsql VOLATILE; >>>> >>>> CREATE TRIGGER gravar_role >>>> BEFORE INSERT OR UPDATE OR DELETE >>>> ON sis_user >>>> FOR EACH ROW >>>> EXECUTE PROCEDURE gravar_role(); >>>> >>>> >>>> A unica preocupação que tive que fazer na aplicação é de não permitir >>>> modificar o nome do usuario. >>>> Esta trigger modifica a senha e também remove a role caso seja removido >>>> na tabela. >>>> >>>> Att. Rieg >>>> >>>> >>>> _______________________________________________ >>>> pgbr-geral mailing list >>>> [email protected] >>>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >>>> >>>> >>> ------------------------------ >>> >>> _______________________________________________ >>> pgbr-geral mailing list >>> [email protected] >>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >>> >>> >>> _______________________________________________ >>> pgbr-geral mailing list >>> [email protected] >>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >>> >>> >> >> _______________________________________________ >> pgbr-geral mailing list >> [email protected] >> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >> >> > > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > >
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
