Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

Einmal wieder von vorne

Dieses Thema im Forum "PostgreSQL" wurde erstellt von Kampfgummibaerlie, 19 März 2020.

  1. Kampfgummibaerlie

    Kampfgummibaerlie Datenbank-Guru

    Ich scheine wirklich absolut viel Spaß an der Maschine zu haben.

    Problem war:
    Ich habe 3 NAS vom selben Hersteller, ich aktualisiere alle 3, alle 3 "kaputt", entsprechend das am nächsten NAS abgesicherte Backup nichtmehr zugänglich.

    aber ich komme mit einer neuen (brilliant, wie ich denke) Idee:
    Sollte ich das Passwort in der Account Tabelle per Trigger in eine hashed Form bringen?

    Wieso?:
    Damit, falls ein Hacker zugriff hat, und ein Passwort womöglich ändert, nicht 1:1 ein Passwort angeben kann, mit welchem er sich authorisieren kann?
    Oder reicht es, wenn ichs auf den "Insert" hashe, und die Passwörter "löschbar" sind?

    Ein anderer Gedanke, ob die pgcrypto extension 2 "banale" gleiche Worte durchgehen lässt? Wenn das der Fall wäre, würde der Trigger viel bringen.

    (Also, wenn die Hashed Form auf 'Andi0815' geändert wird, und er sich danach effektiv einloggen will mit dem Passwort 'Andi0815', ob das dann möglich ist, oder ob die Extension die hashed Form benötigt, um authentifizieren zu können).
     
  2. Kampfgummibaerlie

    Kampfgummibaerlie Datenbank-Guru

    OneDrive lasse ich erstmal so weiterlaufen....

    Backup von tauglicher Homepage und Datenbank gefunden :D *freu*

    also wieder beim alten xD
     
  3. Dukel

    Dukel Datenbank-Guru

    Ein Passwort sollte nicht unverschlüsselt irgendwo gespeichert werden. D.h. du speicherst nur den Hash.
     
  4. Kampfgummibaerlie

    Kampfgummibaerlie Datenbank-Guru

    ist mir bewusst, meine Frage ist, ob es irgendeinen sinnvollen Zweck hat den hash on insert zu erzeugen, oder mittels eines triggers, der läuft, wenn man etwas einfügt...

    wenn ich die frage schreibe, um ehrlich zu sein, offenbar das selbe....
     
  5. Dukel

    Dukel Datenbank-Guru

    Die Applikation, die den Insert macht soll das Passwort verschlüsseln und den Hash in die DB schreiben.
     
  6. Kampfgummibaerlie

    Kampfgummibaerlie Datenbank-Guru

    ich nutze die extension pgcrypto, und erstelle beim insert eine hashed form, und speichere diese ab.

    ich glaube, wir reden gerade aneinander vorbei ^^
     
  7. Dukel

    Dukel Datenbank-Guru

    Das kann sein. Wer führt denn die Inserts aus? Das muss doch irgendeine Applikation sein.
     
  8. Kampfgummibaerlie

    Kampfgummibaerlie Datenbank-Guru

    eine Homepage.

    Und mittels PHP führe ich quasi 1:1 den SQL Code aus
     
  9. Dukel

    Dukel Datenbank-Guru

    In PHP machst du den Hash und speicherst diesen.
     
  10. Kampfgummibaerlie

    Kampfgummibaerlie Datenbank-Guru

    $conn = pg_connect für die Datenbankverbindung
    $sql = sql_abfrage für insert
    sql_abfrage erzeugt den hash
     
  11. Dukel

    Dukel Datenbank-Guru

    Statt "insert into ... (user, password,...)..." machst du
    $hash = ... (password)
    und "insert into ... (user,hash,...)...".

    Für das Hashen gibt es mehrere Möglichkeiten:
    PHP: Password Hashing - Manual
     
  12. Kampfgummibaerlie

    Kampfgummibaerlie Datenbank-Guru

    Dukel, die PG-Extension pgcrypto, die im insert enthalten ist, erzeugt ein crypted passwort.
    Code:
    select crypt('Password', gen_salt('BF', 8))
    
    Da PHP ebenfalls eine Server-Seitige Sprache ist, denke ich, ist es irrelevant, obs PHP oder die Datenbank crypted/hashed.
    In Folge dessen denke ich, ist es auch irrelevant, ob ich per einem before insert Trigger oder beim insert hashe.
     
  13. Dukel

    Dukel Datenbank-Guru

    Dann eben ein "insert ... (crypt(...)) ...". Aber wo brauchst du da einen Trigger?
     
  14. Kampfgummibaerlie

    Kampfgummibaerlie Datenbank-Guru

    Genau das frage ich im ersten Post ;)
    Lesen <3
     
  15. Dukel

    Dukel Datenbank-Guru

    Wenn du gleich den Hash speicherst brauchst du keinen Trigger.
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden