Contrôle des accès pour plusieurs bus
Le moteur de messagerie d'un bus d'intégration de services utilise des autorisations basées sur les rôles pour s'assurer que les bus locaux peuvent échanger des messages de manière sécurisée avec les bus d'intégration de services externes et IBM MQ.
Les droits d'accès de l'intégration de services sont basés sur des rôles. En affectant un groupe d'ID utilisateur du référentiel d'utilisateurs à un ou plusieurs rôles d'accès pour une destination d'un bus local, vous pouvez contrôler qui est autorisé à accéder à cette destination de bus et à y effectuer des opérations. Le moteur de messagerie utilise les affectations de rôle lors de la phase d'exécution pour déterminer quelles opérations les membres d'un groupe peuvent effectuer sur la destination. Si une application client doit échanger des messages avec un autre bus, vous devez affecter l'identité de l'application client aux rôles d'expéditeur et de destinataire du bus éloigné (externe). Lorsque l'application client envoie un message de la destination de bus local à la destination de bus externe, le moteur de messagerie vérifie en deux phases les droits d'accès de l'identité de l'application client :
- Vérification des autorisations - Première phase
- Lorsque l'application client envoie un message à partir de la destination locale, le moteur de messagerie vérifie que l'identité de l'application client est autorisée à accéder dans le rôle d'expéditeur à la destination de bus externe.
- Vérification des autorisations - Deuxième phase
- Lorsque la destination de bus externe reçoit le message, le moteur de messagerie vérifie que l'identité du message (qui correspond initialement à l'identité de l'application client expéditrice) est autorisée à accéder dans le rôle d'expéditeur à la destination de bus externe.
Les messages sont envoyés à une destination de bus externe en utilisant une définition de proxy de destination de bus externe ou de bus externe. Cette définition contient les droits d'accès qui déterminent si l'expéditeur est autorisé à envoyer des messages au bus externe. Les définitions de destination externe permettent d'octroyer des droits d'accès destination par destination. S'il n'existe pas de définition de destination externe pour une destination spécifique, le moteur de messagerie utilise la définition de bus externe par défaut.
Il est important de comprendre que c'est les affectations de rôle du bus externe ou de la destination de bus externe qui contrôlent si une application client peut envoyer des messages au bus externe. Lorsque le bus externe reçoit un message, le moteur de messagerie du bus externe utilise les affectations de rôle du bus externe pour vérifier si le message peut accéder à la destination de bus externe.
Lors de la deuxième phase de la vérification des autorisations, le moteur de messagerie utilise l'identité stockée dans le message. Cette identité correspond à l'origine à celle de l'application client expéditrice, mais elle peut être remplacée sur la destination de bus externe par les valeurs spécifiées pour les propriétés ID utilisateur entrant ou ID utilisateur sortant. Dans ce cas, le moteur de messagerie utilise l'ID utilisateur entrant ou sortant et non l'identité de l'application client expéditrice d'origine pour effectuer ses vérifications d'autorisation sur le bus externe.
- L'application client expéditrice doit disposer des autorisations dans le rôle d'expéditeur pour les destinations de bus externe appropriées.
- Les destinations de bus externes doivent exister.
Les contrôles effectués sur les ID utilisateur entrant et sortant sont également appliqués lorsque les messages sont acheminés via plusieurs bus et lorsque les messages sont envoyés à un réseau IBM MQ.
Si des bus sécurisés sont reliés, la liaison entre eux doit être sécurisée. Pour protéger les données transmises via la liaison virtuelle entre les bus à l'aide de SSL, vous devez définir les chaînes de transport requises, puis référencer le nom de la chaîne de transport.