Aggiungo un gestore code remoto al mio client WebSphere MQ.
Non sono affatto sicuro di cosa significhi esattamente. MQ Explorer mantiene un elenco di definizioni del gestore code. MQ Client è solo una libreria per effettuare connessioni.
Se intendevi aggiungere un gestore code remoto a MQ Explorer, è logico. Oltre a definire la connessione in Explorer, sarà necessario eseguire il provisioning della connessione al gestore code. Ciò significa definire il canale SYSTEM.ADMIN.SVRCONN
o uno con un nome di tua scelta, definire e avviare un listener. Se si è su un gestore code 7.1 o superiore (è sempre utile elencare le versioni quando si richiede informazioni su MQ), sarà inoltre necessario creare una regola CHLAUTH per consentire la connessione e un'altra regola CHLAUTH per consentire la connessione con i privilegi amministrativi. o quello o disabilita del tutto le regole di CHLAUTH, ma questo non è raccomandato.
Se ho un nome di un canale come MY.CHANNEL.NAME
ed è un canale di connessione server con mqm
come MCAUSER
, posso eseguire alcuni comandi (MQSC o OS) attraverso questo canale sul server?
Forse.
Fuori dalla scatola, MQ nega tutte le connessioni client. Esistono regole di CHLAUTH per negare le connessioni amministrative e altre regole di CHLAUTH per negare le connessioni per qualsiasi canale SYSTEM.*
diverso da SYSTEM.ADMIN.SVRCONN
. Poiché le connessioni di amministratore sono negate, gli utenti non amministratori devono disporre dell'accesso tramite i comandi o setmqaut
prima che possano utilizzare SYSTEM.ADMIN.SVRCONN
, quindi MQ è detto "sicuro per impostazione predefinita".
Quando si crea MY.CHANNEL.NAME
e si connette come amministratore e se CHLAUTH è abilitato, la connessione verrà negata. Dovresti aggiungere una nuova regola CHLAUTH come ...
SET CHLAUTH('MY.CHANNEL.NAME') TYPE(BLOCKUSER) USERLIST('*NOBODY') WARN(NO) ACTION(ADD)
... per consentire la connessione di amministratore.
(NOTA:.. Regole di blocco MQ CHLAUTH utilizzano una metodologia lista nera I blocchi di regole predefinite*MQADMIN
da tutti i canali La regola che ho elencato sopra prevale la regola di default in quanto il nome del canale è più specifico, e blocca*NOBODY
-. che è un elenco di ID utente che non includono mqm o qualsiasi altro ID utente di gestione e 'strano, ma è così che funziona)
Maggiori informazioni su questo argomento in http://t-rob.net/links, e in particolare la conferenza di Morag. presentazione alloLe regolesono obbligatorie.
20150506 Aggiornamento
risposta a modifiche # 1 # 2 & nella domanda originale è la seguente:
La prima modifica dice che il QMgr è alla v7.0 e la seconda mostra che la QMgr aveva Record di CHLAUTH definiti. Poiché CHLAUTH non era disponibile fino alla versione 7.1, queste due affermazioni si escludono a vicenda: non possono essere entrambe vere. Quando si fornisce la versione del server o client MQ, è meglio incollare l'output di dspmqver
. Se la domanda riguarda GSKit, codice Java o altri componenti oltre al codice base, allora dspmqver -a
sarebbe ancora meglio.
L'output MQSC fornito negli aggiornamenti delle domande spiega completamente gli errori.
dis chl(SYSTEM.ADMIN.SVRCONN) MCAUSER
5 : dis chl(SYSTEM.ADMIN.SVRCONN) MCAUSER
AMQ8147: WebSphere MQ object SYSTEM.ADMIN.SVRCONN not found.
Come osserva Morag, il SYSTEM.ADMIN.SVRCONN
non può essere utilizzato perché non è stato definito.
AMQ8878: Display channel authentication record details.
CHLAUTH(SYSTEM.*) TYPE(ADDRESSMAP)
ADDRESS(*) USERSRC(NOACCESS)
L'errore auths accade perché qualsiasi collegamento a qualsiasiSYSTEM.*
canale SVRCONN non espressamente sovrascritto è bloccata da questa regola. La regola CHLAUTH per SYSTEM.ADMIN.SVRCONN
ha la precedenza perché è più esplicita e consente connessioni non di amministrazione a quel canale. La mancanza di una regola di override simile per SYSTEM.AUTO.SVRCONN
significa che viene negata dalla regola esistente per i canali SYSTEM.*
come elencato sopra.
Come osservato in precedenza, è FORTEMENTE consigliato di andare al sito web collegato e leggere conferenza di presentazione di Morag sulla sicurezza v7.1 e CHLAUTH regole MQ. Spiega come vengono applicate le regole di CHLAUTH, come funziona la precedenza e, cosa forse più importante, come verificarle con lo MATCH(RUNCHECK)
parameter.
di fare la giusta MQ Security, è necessario almeno seguente:
- definire un canale con un nome che non inizia con
SYSTEM.*
e impostare MCAUSER('*NOBODY')
.
- Definire una regola CHLAUTH per consentire le connessioni a quel canale, mappando il MCAUSER come richiesto.
- Se si desidera collegare al canale con
mqm
o l'accesso di amministrazione, definire le regole per CHLAUTH autenticare il canale, preferibilmente utilizzando TLS e certificati.
ci sono diverse cose che si fanno non vogliono fare, per motivi che sono spiegati in Morag e di mie presentazioni. Questi includono ...
- Utilizzare
SYSTEM.AUTO.SVRCONN
per qualsiasi connessione legittima.
- Per quello che riguarda, utilizzando
SYSTEM.*
qualsiasi cosa (eccetto per SYSTEM.ADMIN.SVRCONN
o SYSTEM.BROKER.*
) per le connessioni legittime.
- Consentire le connessioni di amministratore non autenticate.
- Disabilitazione delle regole di CHLAUTH.
- Disattivazione OAM.
I voglio persone per imparare la sicurezza MQ e impararlo davvero bene. Tuttavia, in qualità di consulente specializzato in questo settore, devo dirvi che anche i clienti che mi hanno assunto per offrire corsi sul posto e aiutare con la loro implementazione hanno difficoltà a bloccarlo. Ci sono due intuizioni da trarre da questo fatto.
In primo luogo, se non si ha abbastanza tempo per essere aggiornati sulla sicurezza MQ, l'implementazione non sarà sicura.Studiare l'argomento al punto di comprendere come tutti i pezzi si adattino abbastanza bene per escogitare un modello di sicurezza decente richiede un addestramento pratico con un QMgr che puoi costruire, martellare, demolire, ricostruire, ecc. Richiede settimane di studio pratico dedicato, o mesi o anni di studio casuale. Il mio consiglio qui è di andare a ottenere MQ Advanced for Developers. È completamente funzionante, gratuito, e ha un superset dei controlli che hai sulla QMgr v7.1 o v7.5 su cui stai lavorando ora.
Secondo intuizione è che non esiste una scorciatoia per l'apprendimento di sicurezza MQ (o qualsiasi altro IT). Se viene affrontato come se fosse semplicemente una questione di configurazione, allora è quasi garantito che non sia sicuro quando implementato. Se viene affrontato come l'apprendimento di tutti i diversi controlli disponibili per l'autenticazione, l'autorizzazione e l'applicazione delle policy, e quindi imparare come interagiscono tutti e se la sicurezza viene affrontata come una disciplina della pratica, allora è possibile ottenere una sicurezza significativa.
Affrontare questa seconda questione richiederà un investimento nell'istruzione. Leggi le presentazioni e prova i vari controlli in diretta su un QMgr di prova che gestisci. Comprendere quali errori vanno a quali registri errori, quali generano messaggi di eventi e quale tipo di eventi sono generati. Ottenere alcuni degli strumenti di diagnostica nel SupportPacs, come ad esempio MS0P, che è uno dei miei preferiti, e acquisire familiarità con loro. Prendi in considerazione la partecipazione allo MQ Tech Conference (dove puoi incontrare molte delle persone che rispondono qui su SO) per una formazione più approfondita.
Se tu (o il tuo datore di lavoro) non sei pronto a impegnarti in un'approfondita preparazione o stai cercando di apprenderlo per una scadenza imminente del progetto, considera l'assunzione di competenze approfondite di MQ Security in base alle necessità, perché dipende la formazione sul lavoro just-in-time per questo argomento è una ricetta per una rete non protetta.
Sembra che tu ci abbia mostrato nella tua modifica che NON hai il SYSTEM.ADMIN.SVRCONN definito. 'AMQ8147: oggetto WebSphere MQ SYSTEM.ADMIN.SVRCONN non trovato. Prego definirlo. –