本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon Simple Queue Service 身份和访问权限故障排查
您可以使用以下信息,帮助诊断和修复在使用 Amazon SQS 和 IAM 时可能遇到的常见问题。
我无权在 Amazon SQS 中执行操作
如果您收到一个错误,指明您无权执行某个操作,则必须更新策略以允许您执行该操作。
当 mateojackson 用户尝试使用控制台查看有关虚构 资源的详细信息,但不拥有虚构 my-example-widgetsqs: 权限时,会发生以下示例错误。GetWidget
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: sqs:GetWidgeton resource:my-example-widget
在此情况下,Mateo 的策略必须更新以允许其使用 sqs: 操作访问 GetWidget 资源。my-example-widget
如果您需要帮助,请联系您的AWS管理员。您的管理员是提供登录凭证的人。
我无权执行 iam:PassRole
如果您收到一个错误,指明您无权执行 iam:PassRole 操作,则必须更新策略以允许您将角色传递给 Amazon SQS。
有些AWS 服务允许您将现有角色传递给该服务,而不是创建新的服务角色或服务相关角色。为此,您必须具有将角色传递到服务的权限。
当名为 marymajor 的 IAM 用户尝试使用控制台在 Amazon SQS 中执行操作时,会发生以下示例错误。但是,服务必须具有服务角色所授予的权限才可执行此操作。Mary 不具有将角色传递到服务的权限。
User: arn:aws:iam::123456789012:user/marymajoris not authorized to perform: iam:PassRole
在这种情况下,必须更新 Mary 的策略以允许她执行 iam:PassRole 操作。
如果您需要帮助,请联系您的AWS管理员。您的管理员是提供登录凭证的人。
我想允许我以外的人访问我AWS 账户的 Amazon SQS 资源
您可以创建一个角色,以便其他账户中的用户或您组织外的人员可以使用该角色来访问您的资源。您可以指定谁值得信赖,可以代入角色。对于支持基于资源的策略或访问控制列表 (ACLs) 的服务,您可以使用这些策略向人们授予访问您的资源的权限。
要了解更多信息,请参阅以下内容:
-
要了解 Amazon SQS 是否支持这些特征,请参阅Amazon Simple Queue Service 如何与 IAM 结合使用。
-
要了解如何提供对您拥有的资源的访问权限AWS 账户,请参阅 IAM 用户指南中的向您拥有AWS 账户的另一个 IAM 用户提供访问权限。
-
要了解如何向第三方提供对您的资源的访问权限AWS 账户,请参阅 IAM 用户指南中的向第三方提供访问权限。AWS 账户
-
要了解如何通过身份联合验证提供访问权限,请参阅《IAM 用户指南》中的为经过外部身份验证的用户(身份联合验证)提供访问权限。
-
要了解使用角色和基于资源的策略进行跨账户访问之间的差别,请参阅《IAM 用户指南》中的 IAM 中的跨账户资源访问。
我想解锁我的队列
如果您AWS 账户属于某个组织,则AWS Organizations策略可能会阻止您访问 Amazon SQS 资源。默认情况下,AWS Organizations策略不会阻止任何向 Amazon SQS 发出的请求。但是,请确保您的AWS Organizations策略尚未配置为阻止访问 Amazon SQS 队列。有关如何查看您的AWS Organizations政策的说明,请参阅《AWS Organizations用户指南》中的列出所有政策。
此外,如果您错误地将成员账户的队列策略配置为拒绝所有用户访问您的 Amazon SQS 队列,则可以通过在 IAM 中为该成员账户启动特权会话来解锁队列。启动特权会话后,您可以删除配置错误的队列策略以重新获得对队列的访问权限。有关更多信息,请参阅 IAM 用户指南中的对AWS Organizations成员账户执行特权任务。