sql >> Databáze >  >> RDS >> PostgreSQL

Vytvoření uživatele se zašifrovaným heslem v PostgreSQL

Můžete zadat heslo již zahašované pomocí md5 , jak je uvedeno v dokumentu (CREATE ROLE):

ENCRYPTED UNECRYPTED Tato klíčová slova řídí, zda je heslo v systémových katalozích uloženo zašifrováno. (Pokud není zadáno ani jedno, výchozí chování je určeno konfiguračním parametrempassword_encryption.) Pokud je předložený řetězec hesla již ve formátu šifrovaném MD5, je uložen zašifrovaný tak, jak je bez ohledu na to, zda je zadáno ENCRYPTED nebo NECRYPTED (protože systém nedokáže dešifrovat zadaný řetězec zašifrovaného hesla). To umožňuje opětovné načtení zašifrovaných hesel během výpisu/obnovy.

Informace, která zde chybí, je, že řetězec zašifrovaný MD5 by měl tvořit heslo spojené s uživatelským jménem plus md5 na začátku.

Takže například vytvořit u0 s heslem foobar , s vědomím, že md5('foobaru0') je ac4bbe016b808c3c0b816981f240dcae :

CREATE USER u0 PASSWORD 'md5ac4bbe016b808c3c0b816981f240dcae';

a poté se u0 bude moci přihlásit zadáním foobar jako heslo.

Nemyslím si, že v současné době existuje způsob, jak použít SHA-256 místo md5 pro hesla PostgreSQL.



  1. DateDiff pro výstup v hodinách a minutách

  2. Vnořené třídy - CustomRowMapper !! Už to není problém!! - Část 2

  3. špatný výběr výkonu Hibernate ve srovnání s přímým spuštěním - jak ladit?

  4. Přidejte jedinečné omezení ke kombinaci dvou sloupců