Comment les files d'attente peuvent être faites privée/sécurité dans RabbitMQ dans un multilocataire système?

J'ai lu le Obtenir Commencé guide fourni par RabbitMQ et ont même contribué à la sixième exemple de pris d'assaut-amqp, j'ai donc une petite idée de la connaissance sur AMQP.

Toutefois, le guide n'est pas exhaustif, et évite des choses comme l'authentification et l'autorisation.

Nous sommes en train de concevoir un multilocataire système qui permettra d'utiliser RabbitMQ dans un RPC-type de situation. Ce qui est peut-être différent à propos de cette mise en œuvre de la RPC, c'est que la distance procédures seront effectivement les autres locataires des programmes sur le système.

En fait, je cherche à isoler le bus de données, qui comprend les assertions suivantes:

  1. Notre serveur ne de fournir des données pour le mauvais locataire programme (ce qui est facilement manipulé et est pertinente, mais ne remet pas en cause).
  2. Locataire programmes ne sont pas être en mesure de lire les données à partir des files d'attente qui ne sont pas les leurs.
  3. Locataire programmes ne sont pas être en mesure d'écrire des files d'attente ne sont pas les leurs.

Cette question est strictement à propos de RabbitMQ de sécurité. Je sais que RabbitMQ prend en charge le protocole SSL, qui fournit de bout en bout le cryptage, et je sais RabbitMQ prend en charge nom d'utilisateur/mot de passe d'authentification. Je ne sais pas si ces choses s'appliquent à la privatisation de la file d'attente d'utilisation (aka ACL), c'est à dire la connexion peut être chiffré, et l'utilisateur peut être vérifiée, mais l'utilisateur peut lire /écrire à partir de toutes les files d'attente.

Quelqu'un peut-il m'éclairer sur ce sujet plus complexe? Je suis convaincu que RabbitMQ pouvez soutenir ce type de système, mais pas exactement positive. Je sais qu'il y a des choses dans RabbitMQ que je ne sais pas à propos, par exemple, ce sont des vhosts et vont-ils vous aider dans cette situation? Je ne vois pas la solution à ma connaissance limitée de routage clés, noms de file d'attente et d'échanges.

InformationsquelleAutor Brian | 2011-10-20