User
每个 AMQP 0-9-1 客户端连接都有一个必须进行身份验证的关联用户。每个客户端连接还以相应虚拟主机(vhost)为目标,用户必须拥有其一组权限。用户可能有权配置、写入和读取虚拟主机中的队列和交换器。在建立连接时指定用户凭证和目标虚拟主机。
当您首次创建 Amazon MQ for RabbitMQ 代理程序时,Amazon MQ 使用您提供的登录凭证创建带有 administrator
标签的 RabbitMQ 用户。然后,您可以通过 RabbitMQ 管理 API
注意
不通过 Amazon MQ 用户 API 存储或显示 RabbitMQ 用户。
要使用 RabbitMQ 管理 API 创建新用户,请使用以下 API 终端节点和请求体。将 username
和 password
替换为新的登录凭证。通过 RabbitMQ Web 控制台或管理 API 创建用户时,避免使用 guest
作为用户名。Amazon MQ for RabbitMQ 禁止使用 guest
用户名的用户通过 RabbitMQ Web 控制台、管理 API 或应用程序级连接远程访问代理。
PUT /api/users/
username
HTTP/1.1 {"password":"password
","tags":"administrator"}
重要
-
请勿在代理用户名中添加个人身份信息 (PII) 或其他机密或敏感信息。其他Amazon服务(包括 CloudWatch Logs)可以访问代理用户名。代理用户名不适合用于私有或敏感数据。
-
如果您忘记了在创建代理时设置的管理员密码,则无法重置凭证。如果您创建了多个管理员,则可以使用其他管理员用户登录,然后重置或重新创建您的凭证。如果您只有一个管理员用户,则必须删除代理并使用新凭证创建一个新代理。我们建议在删除代理之前使用或备份消息。
tags
键是必需的,并且是用逗号分隔的用户标签列表。Amazon MQ 支持 administrator
、management
、monitoring
和 policymaker
用户标签。
您可以使用以下 API 终端节点和请求体为单个用户设置权限。将 vhost
和 username
替换为您的信息。对于默认虚拟主机 /
,使用 %2F
。
POST /api/permissions/
vhost
/username
HTTP/1.1 {"configure":".*","write":".*","read":".*"}
注意
configure
、read
和 write
键都是必需的。
通过使用通配符 .*
值,则此操作将向用户授予指定虚拟主机中所有队列的读取、写入和配置权限。有关通过 RabbitMQ 管理 API 管理用户的更多信息,请参阅 RabbitMQ 管理 HTTP API