PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come crittografare le password con PostgreSQL?

digest(data text, type text) returns bytea; non è una sintassi valida.

Consiglio di usare bcrypt invece. Non sono richieste definizioni di funzioni aggiuntive:

INSERT into "login" (login, password, employee_id) 
     VALUES ('email',crypt('password', gen_salt('bf'));

Più tardi...

UPDATE table SET password = crypt('password',gen_salt('bf'))

E controllando la password:

SELECT ... FROM table 
    WHERE password is NOT NULL 
      AND password = crypt('password-to-test',password);

Bcrypt è consigliato da Software artigianale e Jeff Atwood . I documenti ufficiali di pgcrypto potrebbe anche essere di interesse.