AWS IoT Greengrass Version 1 2023 年 6 月 30 日进入延长寿命阶段。有关更多信息,请参阅 AWS IoT Greengrass V1 维护策略。在此日期之后,将 AWS IoT Greengrass V1 不会发布提供功能、增强功能、错误修复或安全补丁的更新。在上面运行的设备 AWS IoT Greengrass V1 不会中断,将继续运行并连接到云端。我们强烈建议您迁移到 AWS IoT Greengrass Version 2,这样可以添加重要的新功能并支持其他平台。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
配置组角色
组角色是您创建并附加到 Greengrass 组的 IAM 角色。此角色包含部署的 Lambda 函数(和其他 AWS IoT Greengrass 功能)用来访问 AWS 服务的权限。有关更多信息,请参阅Greengrass 组角色。
您可以使用以下高级步骤在 IAM 控制台中创建组角色。
-
创建允许或拒绝对一个或多个资源执行操作的策略。
-
创建使用 Greengrass 服务作为受信任实体的角色。
-
将策略附加到角色。
然后,在 AWS IoT 控制台中,您将角色添加到 Greengrass 组。
注意
一个 Greengrass 组有一个组角色。如果要添加权限,可以编辑附加的策略或附加更多策略。
对于此教程,您将创建权限策略,该策略允许对 Amazon DynamoDB 表执行描述、创建和更新操作。然后,您可以将该策略附加到新角色并将该角色与您的 Greengrass 组关联。
首先,创建一个客户托管策略,该策略授予这个模块中的 Lambda 函数要求的权限。
-
在 IAM 控制台的导航窗格中,选择 Policies,然后选择 Create policy。
-
在 JSON 选项卡中,将占位符内容替换为以下策略。此模块中的 Lambda 函数使用这些权限来创建和更新名为
CarStats
的 DynamoDB 表。{ "Version": "2012-10-17", "Statement": [ { "Sid": "PermissionsForModule6", "Effect": "Allow", "Action": [ "dynamodb:DescribeTable", "dynamodb:CreateTable", "dynamodb:PutItem" ], "Resource": "arn:aws:dynamodb:*:*:table/CarStats" } ] }
-
依次选择 Next: Tags(下一步:标签)和 Next: Review(下一步:查看)。本教程中未使用标签。
-
对于 Name (名称),输入
greengrass_CarStats_Table
,然后选择 Create policy (创建策略)。接下来,创建一个使用新策略的角色。
-
在导航窗格中,选择 Roles (角色),然后选择 Create role (创建角色)。
-
在可信实体类型下,选择 AWS 服务。
-
在用例、其他 AWS 服务的用例下面,选择 Greengrass,选择 Greengrass,然后选择下一步。
-
在权限策略下,选择新的
greengrass_CarStats_Table
策略,然后选择下一步。 -
对于角色名称,输入
Greengrass_Group_Role
。 -
对于描述,输入
Greengrass group role for connectors and user-defined Lambda functions
。 -
选择 Create role(创建角色)。
现在,将该角色添加到 Greengrass 组。
在 AWS IoT 控制台导航窗格的管理下,展开 Greengrass 设备,然后选择组 (V1)。
-
在 Greengrass 组下,选择您的组。
-
选择 设置,然后选择 关联角色。
-
从您的角色列表中选择 Greengrass_Group_Role,然后选择关联角色。