Uscita di sicurezza lato client per inserire ID utente e password ( mqccred )
Se si dispone di applicazioni client richieste per inviare un ID utente o una password ma non è ancora possibile modificare l'origine, esiste un'uscita di sicurezza fornita con IBM® MQ 8.0 denominata mqccred che è possibile utilizzare. mqccred fornisce un ID utente e una password per conto dell'applicazione client, da un file .ini . Questi ID utente e password vengono inviati al gestore code che, se configurato per eseguire tale operazione, li autenticherà.
Panoramica
mqccred è un'uscita di sicurezza che viene eseguita sulla stessa macchina dell'applicazione client. Consente di fornire informazioni su ID utente e password per conto dell'applicazione client, laddove tali informazioni non vengono fornite dall'applicazione stessa. Le informazioni sull'ID utente e sulla password vengono fornite in una struttura nota come Parametri di sicurezza della connessione (MQCSP) e verranno autenticate dal gestore code se è configurata l' autenticazione della connessione .
Le informazioni su ID utente e password vengono richiamate da un file .ini sulla macchina client. Le password nel file sono protette da offuscamento utilizzando il comando runmqccred e anche assicurando che le autorizzazioni file sul file .ini siano impostate in modo tale che solo l'ID utente che esegue l'applicazione client (e quindi l'exit) sia in grado di leggerlo.
Ubicazione
- Windows piattaforme
- Nella directory installation_directory\Tools\c\Samples\mqccred\
- AIX® and Linux® piattaforme
- Nella directory installation_directory/samp/mqccred
- Agisce esclusivamente come un'uscita del canale di sicurezza e deve essere l'unica uscita di questo genere definita su un canale.
- Generalmente viene denominato mediante la CCDT (Client Channel Definition Table), ma un client Java può avere l'uscita menzionata direttamente negli oggetti JNDI oppure l'uscita potrebbe essere configurata per le applicazioni che creano manualmente la struttura MQCD .
- È necessario copiare i programmi mqccred e mqccred_r nella directory var/mqm/exits .Ad esempio, su un sistema a 64 bit AIX o Linux , immettere il comando:
cp installation_directory/samp/mqccred/lib64/* /var/mqm/exitsPer ulteriori informazioni, consultare Un esempio passo per passo di come verificare mqccred .
- È in grado di eseguire versioni precedenti di IBM MQ, fino a IBM WebSphere® MQ 7.0.1.
Impostazione di ID utente e password
Il file .ini contiene le stanze per ogni gestore code, con un'impostazione globale per i gestori code non specificati. Ogni stanza contiene il nome del gestore code, un ID utente e una password in testo semplice o offuscata.
È necessario modificare il file .ini manualmente, utilizzando l'editor desiderato e aggiungere l'attributo password in testo semplice alle stanze. Eseguire il programma runmqccred fornito, che acquisisce il file .ini e sostituisce l'attributo Password con l'attributo OPW , un formato offuscato della password.
Consultare runmqccred per una descrizione del comando e dei relativi parametri.
Il file mqccred.ini contiene le informazioni relative all'ID utente e alla password.
Un file modello .ini viene fornito nella stessa directory dell'uscita per fornire un punto iniziale per la propria azienda.
MQCCRED=C:\mydir\mqccred.ini
Se si utilizza MQCCRED, la variabile deve includere il nome completo del file di configurazione, incluso qualsiasi tipo di file .ini . Poiché questo file contiene password (anche se offuscate), si prevede di proteggere il file utilizzando i privilegi del sistema operativo per garantire che le persone non autorizzate non possano leggerlo. Se non si dispone dell'autorizzazione file corretta, l'uscita non verrà eseguita correttamente.
Se l'applicazione ha già fornito una struttura MQCSP , l'uscita normalmente lo rispetta e non inserirà alcuna informazione dal file .ini . Tuttavia, è possibile sovrascriverlo utilizzando l'attributo Force nella sezione.
L'impostazione di Force sul valore TRUE elimina l'ID utente e password forniti dall'applicazione e sostituisce quelli con la versione del file ini.
È inoltre possibile impostare l'attributo Force nella sezione globale del file per impostare il valore predefinito di tale file.
Il valore predefinito per Force è FALSE.
mqccred.ini :
# comments are permitted
AllQueueManagers:
User=abc
OPW=%^&aervrgtsr
QueueManager:
Name=QMA
User=user1
OPW=H&^dbgfh
Force=TRUE
QueueManager:
Name=QMB
User=user2
password=passw0rd
- Le singole definizioni del gestore code hanno la precedenza sull'impostazione globale.
- Gli attributi non sono sensibili al maiuscolo / minuscolo.
Vincoli
Quando questa uscita è in uso, l'ID utente locale della persona che esegue l'applicazione non passa dal client al server. Le uniche informazioni di identità disponibili provengono dal contenuto del file ini.
Pertanto, è necessario configurare il gestore code in modo da utilizzare ADOPTCTX(YES)o associare la richiesta di connessione in entrata a un ID utente appropriato tramite uno dei meccanismi disponibili, ad esempio, Record di autenticazione di canale.
Debug
L'uscita scrive nella traccia IBM MQ standard quando questa è abilitata.
Per facilitare il debug dei problemi di configurazione, l'uscita può anche scrivere direttamente in stdout.
- ERRORE
- Stampare solo le informazioni sulle condizioni di errore, come ad esempio non essere in grado di individuare il file di configurazione.
- DEBUG
- Visualizza queste condizioni di errore e alcune ulteriori istruzioni di traccia.
- NOCHECK
- Ignora i vincoli sulle autorizzazioni file e l'ulteriore vincolo in base al quale il file
.ininon deve contenere password non protette.
È possibile inserire uno o più di questi elementi nel campo SCYDATA , separati da virgole, in qualsiasi ordine. Ad esempio, SCYDATA=(NOCHECKS,DEBUG).
Notare che gli elementi sono sensibili al maiuscolo / maiuscolo e devono essere immessi in maiuscolo.
Utilizzo di mqccred
SCYEXIT('mqccred(ChlExit)') :DEFINE CHANNEL(channelname) CHLTYPE(clntconn) +
CONNAME(remote machine) +
QMNAME(remote qmgr) +
SCYEXIT('mqccred(ChlExit)') +
REPLACE