22.2. 队列身份验证和访问控制
RabbitMQ 和 Qpid 提供身份验证和访问控制机制,以控制对队列的访问。
简单身份验证和安全层(SASL)是在互联网协议中进行验证和数据安全性的框架。RabbitMQ 和 Qpid 都提供 SASL 和其他可插拔身份验证机制,除了允许提高身份验证安全性的简单用户名和密码之外。虽然 RabbitMQ 支持 SASL,但 OpenStack 中的支持目前还不允许请求特定的 SASL 身份验证机制。OpenStack 中的 RabbitMQ 支持通过未加密的连接或用户名和密码以及 X.509 客户端证书来建立安全 TLS 连接。
考虑在所有 OpenStack 服务节点上配置 X.509 客户端证书,用于客户端连接消息传递队列,并在可能的情况下(目前只有 Qpid)使用 X.509 客户端证书执行身份验证。使用用户名和密码时,应为每个服务和节点创建帐户,以便精细地访问队列。
在部署前,请考虑排队服务器使用的 TLS 库。Qpid 使用 Mozilla 的 NSS 库,而 RabbitMQ 使用 Erlang 的 TLS 模块(使用 OpenSSL)。