Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Guida di riferimento agli Hooks per Trusted Language Extensions for Postgre SQL
Trusted Language Extensions for Postgre supporta gli hook SQL Postgre. SQL Un hook è un meccanismo di callback interno a disposizione degli sviluppatori per estendere le funzionalità principali di Postgre. SQL Utilizzando gli hook, gli sviluppatori possono implementare le proprie funzioni o procedure da utilizzare durante varie operazioni di database, modificando così in qualche modo il comportamento di SQL Postgre. Ad esempio, puoi usare un passcheck
hook per personalizzare il modo in cui Postgre SQL gestisce le password fornite durante la creazione o la modifica delle password per gli utenti (ruoli).
Visualizza la seguente documentazione per saperne di più sull'hook passcheck disponibile per le tue estensioni. TLE
Hook di verifica della password (passcheck)
L'passcheck
hook viene utilizzato per personalizzare il SQL comportamento di Postgre durante il processo di verifica della password per i seguenti comandi e metacomandi. SQL psql
CREATE ROLE
— Per ulteriori informazioni, consulta la documentazione di Postgre. CREATEROLEusername
...PASSWORDSQL ALTER ROLE
— Per ulteriori informazioni, consulta la documentazione ALTERROLEusername
...PASSWORDdi SQL Postgre. \password
: questo metacomandousername
psql
interattivo modifica in modo sicuro la password per l'utente specificato eseguendo l'hashing della password prima di utilizzare in modo trasparente la sintassiALTER ROLE ... PASSWORD
. Il metacomando è un wrapper sicuro per il comandoALTER ROLE ... PASSWORD
, quindi l'hook si applica al comportamento del metacomandopsql
.
Per vedere un esempio, consulta Codice di hook di controllo della password.
Prototipo di funzione
passcheck_hook(username text, password text, password_type pgtle.password_types, valid_until timestamptz, valid_null boolean)
Argomenti
La funzione dell'hook passcheck
accetta i seguenti argomenti:
username
: il nome (come testo) del ruolo (nome utente) che imposta una password.password
: la password in chiaro o con hash. La password immessa deve corrispondere al tipo specificato inpassword_type
.password_type
: specifica il formatopgtle.password_type
della password, che può essere costituito da una delle seguenti opzioni.PASSWORD_TYPE_PLAINTEXT
: una password in testo semplice.PASSWORD_TYPE_MD5
— Una password che è stata sottoposta a hash utilizzando l'algoritmo MD5 (message digest 5).PASSWORD_TYPE_SCRAM_SHA_256
— Una password che è stata sottoposta a hash utilizzando l'algoritmo SCRAM - SHA -256.
valid_until
: specifica l'ora in cui la password diventa non valida. Questo argomento è facoltativo. Se utilizzi questo argomento, specifica l'ora come valoretimestamptz
.valid_null
: se questo booleano è impostato sutrue
, l'opzionevalid_until
è impostata suNULL
.
Configurazione
La funzione pgtle.enable_password_check
controlla se l'hook passcheck è attivo. L'hook passcheck ha tre possibili impostazioni.
off
: disattiva l'hookpasscheck
di verifica della password. Si tratta del valore di default.on
: attiva l'hookpasscode
di verifica della password in modo che le password vengano confrontate con la tabella.require
: richiede la definizione di un hook di verifica della password.
Note per l'utilizzo
Per attivare o disattivare l'passcheck
hook, è necessario modificare il gruppo di parametri DB personalizzato per l'istanza writer del cluster Aurora SQL Postgre DB.
In Linux, macOS, o Unix:
aws rds modify-db-parameter-group \ --region
aws-region
\ --db-parameter-group-nameyour-custom-parameter-group
\ --parameters "ParameterName=pgtle.enable_password_check,ParameterValue=on,ApplyMethod=immediate"
In Windows:
aws rds modify-db-parameter-group ^ --region
aws-region
^ --db-parameter-group-nameyour-custom-parameter-group
^ --parameters "ParameterName=pgtle.enable_password_check,ParameterValue=on,ApplyMethod=immediate"