适用于 RabbitMQ 身份验证和授权的亚马逊 MQ - Amazon MQ
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

适用于 RabbitMQ 身份验证和授权的亚马逊 MQ

Amazon MQ for RabbitMQ 支持以下认证与授权方法:

简单认证与授权

在此方法中,代理用户存储在 RabbitMQ 代理内部,并通过 Web 控制台或管理 API 进行管理。虚拟主机、交换机、队列和主题的权限直接在 RabbitMQ 中配置。这是默认方法。有关更多信息,请参阅简单身份验证和授权

OAuth 2.0 身份验证和授权

在这种方法中,代理用户及其权限由外部 OAuth 2.0 身份提供商 (IdP) 管理。虚拟主机、交易所、队列和主题的用户身份验证和资源权限通过 OAuth 2.0 提供商的 scope 系统进行集中管理。这简化了用户管理,并实现了与现有身份系统的集成。有关更多信息,请参阅 OAuth 2.0 身份验证和授权

LDAP 身份验证和授权

在这种方法中,代理用户及其权限由外部 LDAP 目录服务管理。用户身份验证和资源权限通过 LDAP 服务器集中管理,允许用户使用其现有的目录服务凭据访问 RabbitMQ。有关更多信息,请参阅 LDAP 身份验证和授权

HTTP 身份验证和授权

在这种方法中,代理用户及其权限由外部 HTTP 服务器管理。用户身份验证和资源权限通过 HTTP 服务器集中管理,允许用户使用自己的身份验证和授权提供程序访问 RabbitMQ。有关此方法的更多信息,请参阅 HTTP 身份验证和授权

SSL 证书身份验证

亚马逊 MQ 支持 RabbitMQ 经纪商的双向 TLS (mTLS)。SSL 身份验证插件使用来自 mTLS 连接的客户端证书对用户进行身份验证。在此方法中,代理用户使用 X.509 客户端证书而不是用户名和密码凭证进行身份验证。根据受信任的证书颁发机构 (CA) 对客户端的证书进行验证,用户名是从证书的字段(例如公用名 (CN) 或主题备用名称 (SAN))中提取的。此方法无需通过网络传输凭据即可提供强身份验证。有关更多信息,请参阅 SSL 证书身份验证

注意

RabbitMQ 支持同时使用多种身份验证和授权方法。例如,您可以同时启用 OAuth 2.0 和简单(内部)身份验证。有关更多信息,请参阅 OAuth 2.0 教程中关于同时启用 OAuth 2.0 和简单(内部)身份验证的部分以及 RabbitMQ 访问控制文档

Amazon MQ 建议在测试身份验证配置时创建一个内部用户。这允许使用 RabbitMQ 管理 API 来验证访问配置。有关更多信息,请参阅访问权限验证