Exit programs per il controllo delle connessioni ODBC/JDBC
Su AS400 è possibile effettuare il controllo di ogni connessione ODBC/JDBC tramite l'uso di Exit Programs che possono essere mandati in esecuzione:
1) Al collegamento di ogni client; (Punto di uscita QIBM_QZDA_INIT)
2) Prima dell’esecuzione di ogni statement SQL. (Punto di uscita QIBM_QZDA_SQL1)
Tali programmi, gestiti con il comando WRKREGINF, ricevono in ingresso i dati della richiesta (profilo utente, statement SQL...) e restituiscono un flag che indica se accettarla.
Vediamo un semplice programma CL per il controllo del collegamento:
PGM PARM(&STATUS &REQUEST)
/* Flag di accettazione/rifiuto richiesta */
DCL VAR(&STATUS) TYPE(*CHAR) LEN(1)
/* Parametro di ingresso contenente anche il nome utente */
DCL VAR(&REQUEST) TYPE(*CHAR) LEN(2000)
DCL VAR(&UTENTE) TYPE(*CHAR) LEN(10)
/* Di default rifiuto tutte le connessioni */
CHGVAR VAR(&STATUS) VALUE('0')
/* Recupero nome utente */
CHGVAR VAR(&UTENTE) VALUE(%SST(&REQUEST 1 10))
/* Abilito solo le connessioni di FRANCO */
IF COND(&UTENTE *EQ 'FRANCO') THEN(CHGVAR +
VAR(&STATUS) VALUE('1'))
ENDPGM
Per attivare il programma si utilizzi il comando
ADDEXITPGM EXITPNT(QIBM_QZDA_INIT) FORMAT(ZDAI0100) PGMNBR(1) PGM(LIB/PGM)
che avrà effetto al riavvio di tutti i programmi QZDASOINIT (programmi sever che gestiscono le chiamate ODBC/JDBC).

Lascia un commento