排查 AWS IoT Greengrass 的身份和访问权限问题 - AWS IoT Greengrass
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

排查 AWS IoT Greengrass 的身份和访问权限问题

可以使用以下信息,以帮助您诊断和修复在使用 AWS IoT Greengrass 和 IAM 时可能遇到的常见问题。

有关一般问题排查帮助,请参阅Troubleshooting

我无权在 AWS IoT Greengrass 中执行操作

如果您收到错误消息,提示您无权执行操作,必须联系您的管理员寻求帮助。您的管理员是指为您提供用户名和密码的那个人。

下面的示例错误发生时mateojacksonIAM 用户尝试查看有关核心设备的详细信息,但没有greengrass:GetCoreDevice权限。

User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: greengrass:GetCoreDevice on resource: arn:aws:greengrass:us-west-2:123456789012:coreDevices/MyGreengrassCore

在这种情况下,Mateo 请求他的管理员更新其策略,以允许他使用 greengrass:GetCoreDevice 操作访问 arn:aws:greengrass:us-west-2:123456789012:coreDevices/MyGreengrassCore 资源。

以下是您在使用 AWS IoT Greengrass 时可能会遇到的一般 IAM 问题。

未授权我执行 iam:PassRole

如果您收到错误消息,提示您无权执行 iam:PassRole 操作,则必须联系您的管理员寻求帮助。您的管理员是指为您提供用户名和密码的那个人。请求该人员更新您的策略,以允许您将角色传递给 AWS IoT Greengrass。

某些 AWS 服务允许您将现有角色传递给该服务,而不是创建新的服务角色或服务相关角色。为此,您必须具有将角色传递给该服务的权限。

当名为的 IAM 用户时,会发生以下示例错误。marymajor尝试使用控制台在 AWS IoT Greengrass 中执行操作。但是,服务必须具有服务角色所授予的权限才可执行操作。Mary 不具有将角色传递到服务的权限。

User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole

在这种情况下,Mary 请求她的管理员来更新其策略,以允许她执行 iam:PassRole 操作。

我是管理员并希望允许其他人访问 AWS IoT Greengrass

要允许其他人访问 AWS IoT Greengrass,您必须为需要访问权限的人员或应用程序创建一个 IAM 实体(用户或角色)。他们将使用该实体的凭证访问 AWS。然后,您必须将策略附加到实体,以便在 AWS IoT Greengrass 中为他们(它们)授予正确的权限。

要立即入门,请参阅创建您的第一个 IAM 委派用户和组中的IAM 用户指南

我希望允许我的 AWS 账户以外的人员访问我的 AWS IoT Greengrass 资源

您可以创建一个 IAM 角色,以便其他账户中的用户或您组织以外的人员可以使用该角色来访问您的 AWS 资源。您可以指定谁值得信赖,可以带入角色。有关更多信息,请参阅 。向您拥有的另一个 AWS 账户中的 IAM 用户提供访问权限提供对第三方拥有的 AWS 账户的访问权限中的IAM 用户指南

AWS IoT Greengrass 不支持根据基于资源的策略或访问控制列表 (ACL) 跨账户访问。