

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

# OAuth 适用于 RabbitMQ 的亚马逊 MQ 的 2.0 身份验证和授权
<a name="oauth-for-amq-for-rabbitmq"></a>

适用于 RabbitMQ 的亚马逊 MQ 支持多种身份验证和授权方法。有关所有支持方法的信息，请参阅适用于 [RabbitMQ 代理的 Amazon MQ 身份验证和授权](rabbitmq-authentication.md)。

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

**重要注意事项**  
OAuth Amazon MQ 不支持 ActiveMQ 经纪商的 2.0 集成。
Amazon MQ for RabbitMQ 不支持由私有 CA 颁发的服务器证书。
RabbitMQ OAuth 2.0 插件不支持令牌内省端点和不透明的访问令牌。它也不会执行令牌吊销检查。
您必须包含 IAM 权限`mq:UpdateBrokerAccessConfiguration`，才能在现有代理上启用 OAuth 2.0。
Amazon MQ 会自动创建一个名为 `monitoring-AWS-OWNED-DO-NOT-DELETE` 的系统用户，该用户仅具有监控权限。即使在 OAuth 支持 2.0 的代理上，该用户也使用 RabbitMQ 的内部身份验证系统，并且只能访问环回接口。

有关如何为适用于 RabbitMQ 代理的 Amazon MQ 配置 OAuth 2.0 的信息，请参阅。[使用 OAuth 2.0 认证与授权](oauth-tutorial.md)

**Topics**
+ [支持的 OAuth 2.0 配置](#oauth-tutorial-supported-configs)
+ [OAuth 2.0 身份验证的其他验证](#oauth-tutorial-additional-validations)

## 支持的 OAuth 2.0 配置
<a name="oauth-tutorial-supported-configs"></a>

适用于 RabbitMQ 的 Amazon MQ 支持 RabbitMQ 2.0 插件中的所有[可配置变量](https://www.rabbitmq.com/docs/oauth2#variables-configurable)，但以下情况除外 OAuth ：
+ `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 身份验证的其他验证
<a name="oauth-tutorial-additional-validations"></a>

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`。