本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
OAuth 适用于 RabbitMQ 的亚马逊 MQ 的 2.0 身份验证和授权
适用于 RabbitMQ 的 Amazon MQ 支持以下身份验证和授权方法:
简单的身份验证和授权
在这种方法中,代理用户存储在 RabbitMQ 代理内部,并通过 Web 控制台或管理 API 进行管理。虚拟主机、交易所、队列和主题的权限直接在 RabbitMQ 中配置。这是默认方法。有关此方法的更多信息,请参阅经纪人用户。
OAuth 2.0 身份验证和授权
在这种方法中,代理用户及其权限由外部 OAuth 2.0 身份提供商 (IdP) 管理。虚拟主机、交易所、队列和主题的用户身份验证和资源权限通过 OAuth 2.0 提供商的 scope 系统进行集中管理。这简化了用户管理并支持与现有身份系统的集成。
重要注意事项
-
OAuth Amazon MQ 不支持 ActiveMQ 经纪商的 2.0 集成。
-
适用于 RabbitMQ 的亚马逊 MQ 不支持私有 CA 颁发的服务器证书。
-
RabbitMQ OAuth 2.0 插件不支持令牌内省端点和不透明的访问令牌。它也不执行令牌撤销检查。
-
您必须包含 IAM 权限
mq:UpdateBrokerAccessConfiguration
,才能在现有代理上启用 OAuth 2.0。 -
Amazon MQ 会自动创建一个名为的
monitoring-AWS-OWNED-DO-NOT-DELETE
具有仅限监控权限的系统用户。即使在 OAuth 支持 2.0 的代理上,该用户也使用 RabbitMQ 的内部身份验证系统,并且只能访问环回接口。
有关如何为您的 Amazon MQ for RabbitMQ 代理配置 OAuth 2.0 身份验证的信息,请参阅。使用 OAuth 2.0 身份验证和授权
支持的 OAuth 2.0 配置
适用于 RabbitMQ 的 Amazon MQ 支持 RabbitMQ 2.0 插件中的所有可配置变量
-
auth_oauth2.https.cacertfile
-
auth_oauth2.oauth_providers.{id/index}.https.cacertfile
-
management.oauth_client_secret
由于 Amazon MQ 不支持此密钥,因此我们不支持 UAA 作为 IdP。
-
management.oauth_resource_servers.{id/index}.oauth_client_secret
-
auth_oauth2.signing_keys.{id/index}
OAuth 2.0 身份验证的其他验证
Amazon MQ 还对 2.0 身份验证强制执行以下额外验证: OAuth
-
一切都 URLs 需要从头开始
https://
。 -
支持的签名算法:
Ed25519
、Ed25519ph
、Ed448
、Ed448ph
、EdDSA
、ES256K
、、ES256
、ES384
、ES512
、、HS256
、HS384
、HS512
、PS256
、、PS384
、PS512
、RS256
、RS384
、、和RS512
。