本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
向 Amazon IoT 规则授予所需的访问权限
使用 IAM 角色来控制Amazon每条规则都可以访问的资源。创建规则之前,您必须创建这样一位用户:该用户运行以下命令访问权限的示例Amazon资源。Amazon IoT在实施规则时扮演这个角色。
完成下面的步骤创建 IAM 角色和Amazon IoT授予Amazon IoT规则它需要的访问权限 (Amazon CLI)。
-
将以下信任策略文档(用于授予 Amazon IoT 代入此角色的权限)保存到名为
iot-role-trust.json
的文件。{ "Version":"2012-10-17", "Statement":[{ "Effect": "Allow", "Principal": { "Service": "iot.amazonaws.com" }, "Action": "sts:AssumeRole" }] }
使用 create-role 命令,指定
iot-role-trust.json
文件,创建 IAM 角色:aws iam create-role --role-name
my-iot-role
--assume-role-policy-document file://iot-role-trust.json
此命令的输出如下所示:
{ "Role": { "AssumeRolePolicyDocument": "url-encoded-json", "RoleId": "AKIAIOSFODNN7EXAMPLE", "CreateDate": "2015-09-30T18:43:32.821Z", "RoleName": "my-iot-role", "Path": "/", "Arn": "
arn:aws:iam::123456789012:role/my-iot-role
" } } -
将以下 JSON 保存到名为
my-iot-policy.json
的文件中。{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "dynamodb:*", "Resource": "*" }] }
该 JSON 是授予 Amazon IoT 管理员对 DynamoDB 的访问权限的示例策略文档。
使用 create-policy 命令授予 Amazon IoT 在代入该角色后访问您的 Amazon 资源的权限,并传入
my-iot-policy.json
文件:aws iam create-policy --policy-name
my-iot-policy
--policy-document file://my-iot-policy.json
有关如何授予访问的更多信息Amazon Web Services在政策中Amazon IoT,见创建 Amazon IoT 规则。
create-policy 命令的输出中包含该策略的 ARN。要将策略与角色关联。
{ "Policy": { "PolicyName": "my-iot-policy", "CreateDate": "2015-09-30T19:31:18.620Z", "AttachmentCount": 0, "IsAttachable": true, "PolicyId": "ZXR6A36LTYANPAI7NJ5UV", "DefaultVersionId": "v1", "Path": "/", "Arn": "
arn:aws:iam::123456789012:policy/my-iot-policy
", "UpdateDate": "2015-09-30T19:31:18.620Z" } } -
使用attach-role-policy命令将您的策略附加至您的角色:
aws iam attach-role-policy --role-name
my-iot-role
--policy-arn "arn:aws:iam::123456789012:policy/my-iot-policy
"