Aktionen
Passwörter - Windows Credential Manager » Historie » Revision 1
Revision 1/4
| Weiter »
[E] Axel S, 27.03.2025 17:00
Zugänge (Passwörter)¶
Ticket: ##22403
Damit Passwörter (für syncro, dblink usw.) aus Sicherheitsgründen nicht mehr im Code hartkodiert werden müssen, sollen diese im Windows-Schlüsselbund (Windows Credential Manager) des Windows Benutzer vom PostgreSQL-Servers hinterlegt werden.
- dafür gibt es jetzt entsprechende Datenbankfunktionen (Language plpython3u).
- nur die DB-Rolle
postgressoll diese DB-Funktionen direkt rufen dürfen, daher im SchemaTSystem_security - anonsten können diese DB-Funktionen nur von Funktionen mit dem Parameter
SECURITY DEFINERgerufen werden
Eintrag im Windows-Schlüsselbund hinzufügen bzw. überschreiben¶
- Funktion
TSystem_security.credential__set() - Rückgabe:
true- Eintrag wurde geschriebenfalse- kein Eintrag wurde geschrieben; Eintrag mit Kombination aus Service- und Benutzernamen existierte bereits und sollte nicht überschrieben werden
- Beispiel:
SELECT TSystem_security.credential__set( servicename => 'SyncroKonto', username => 'syncro', userpassword => 'geheim', overwrite_pw => true );
Passwort aus entsprechenden Eintrag im Windows-Schlüsselbund auslesen¶
- Funktion
TSystem_security.credential__get() - Rückgabe:
<passwort>- Passwort des entsprechenden Eintragsnull- es existiert kein Eintrag für die gegebene Kombination aus Service- und Benutzernamen
- Beispiel:
SELECT TSystem_security.credential__get( servicename => 'SyncroKonto', username => 'syncro' );
Eintrag im Windows-Schlüsselbund löschen¶
- Funktion
TSystem_security.credential__delete() - Rückgabe:
true- entsprechender Eintrag wurde gelöschtfalse- kein Eintrag wurde gelöscht; es existiert kein Eintrag für die gegebene Kombination aus Service- und Benutzernamen
- Beispiel:
SELECT TSystem_security.credential__delete( servicename => 'SyncroKonto', username => 'syncro' );
Alle vorhandenen Einträge im Windows-Schlüsselbund auflisten¶
- Funktion
TSystem_security.credentials__list() - Rückgabe:
- setof Record aus
servicename(varchar) undusername(varchar)
- setof Record aus
| servicename | username |
|---|---|
| SyncroKonto | syncro |
- Beispiel:
SELECT * FROM TSystem_security.credentials__list() ORDER BY servicename, username;
Von [E] Axel S vor 7 Monaten aktualisiert · 1 Revisionen