[z/OS]

Sécurité des files d'attente de diffusion en flux sous z/OS®

La fonction de files d'attente de diffusion en flux permet à un administrateur de configurer une file d'attente locale (ou modèle) avec une file d'attente secondaire, dans laquelle des messages en double sont placés, chaque fois qu'un message est inséré dans la file d'attente d'origine. Il existe deux aspects à prendre en compte en ce qui concerne les droits de diffusion en file d'attente.

Droit de configuration d'une file d'attente pour la diffusion en flux des messages en double

Si vous souhaitez activer la diffusion en flux des messages en double d'une file d'attente vers une file d'attente secondaire, vous devez disposer des droits nécessaires. Pour pouvoir configurer l'attribut STREAMQ d'une file d'attente, vous devez disposer des profils suivants:
  1. ALTER niveau d'accès à MQADMIN ou MXADMIN pour la file d'attente pour laquelle ils modifient l'attribut STREAMQ pour
  2. ALTER niveau d'accès à MQADMIN ou MXADMIN pour la file d'attente à laquelle vous souhaitez envoyer des messages

La combinaison de ces contrôles de sécurité lors de la configuration garantit qu'un utilisateur, qui ne dispose que d'un accès ALTER sur la file d'attente d'origine, ne peut pas placer des messages dans une autre file d'attente sur laquelle il ne dispose pas de droits.

Droit d'ouverture de la ou des files d'attente et d'insertion de messages

Lorsqu'une application ouvre une file d'attente qui a été configurée avec une file d'attente secondaire, via son attribut STREAMQ , il est vérifié que l'utilisateur de l'application dispose des droits de mise à jour sur la file d'attente d'origine.
Remarque: Aucune vérification des droits d'accès supplémentaire n'est effectuée pour l'utilisateur de l'application dans la file d'attente secondaire, ce qui est similaire au modèle de droits d'accès utilisé pour les files d'attente alias.

Les applications qui consomment des messages de la file d'attente d'origine ou de la file d'attente secondaire requièrent des droits de mise à jour ou de lecture (UPDATE ou READ), uniquement sur la file d'attente à partir de laquelle elles consomment des messages.

Aucune vérification supplémentaire des droits d'accès n'est effectuée à l'heure de la mise en place ou de l'obtention.

Exemple

L'exemple suivant montre les profils corrects définis pour permettre à l'utilisateur ADMIN de configurer une file d'attente d'origine, INQUIRIES.QUEUE, pour transmettre des messages à la file d'attente locale ANALYTICS.QUEUE avec RACF:
RDEFINE MQCMDS <QMGR>.ALTER.QLOCAL UACC(NONE) OWNER(<OWNER>)
PERMIT <QMGR>.ALTER.QLOCAL CLASS(MQCMDS) ID(ADMIN) ACCESS(ALTER)

RDEFINE MQADMIN <QMGR>.QUEUE.INQUIRIES.QUEUE UACC(NONE) OWNER(<OWNER>)
PERMIT <QMGR>.QUEUE.INQUIRIES.QUEUE CLASS(MQADMIN) ID(ADMIN) ACCESS(ALTER)

RDEFINE MQADMIN <QMGR>.QUEUE.ANALYTICS.QUEUE UACC(NONE) OWNER(<OWNER>)
PERMIT <QMGR>.QUEUE.ANALYTICS.QUEUE CLASS(MQADMIN) ID(ADMIN) ACCESS(ALTER)
L'utilisateur ADMIN peut alors exécuter la commande suivante:
ALTER QLOCAL(INQUIRIES.QUEUE) STREAMQ(ANALYTICS.QUEUE)
mais si le même utilisateur émet la commande suivante sans configurer les profils de sécurité corrects:
ALTER QLOCAL(INQUIRIES.QUEUE) STREAMQ(PURCHASES.QUEUE)
pour configurer INQUIRIES.QUEUE pour insérer des messages en double dans PURCHASES.QUEUE, ils reçoivent l'erreur suivante:
CSQM166I <QMGR> CSQMAQLC QLOCAL (INQUIRIES.QUEUE) NON AUTORISE