本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
授予 AWS IoT 規則所需的存取權
使用 IAM 角色來控制每個規則可存取 AWS 的資源。建立規則之前,您必須使用允許存取所需 AWS resources 的政策來建立IAM角色。在實作規則時 AWS IoT , 會擔任此角色。
請完成下列步驟,以建立角色IAM和 AWS IoT 政策,授予其所需的存取 AWS IoT 規則 (AWS CLI)。
-
將下列信任政策文件儲存為名為 的檔案,授予擔任角色的 AWS IoT 許可
iot-role-trust.json
。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "iot.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "
123456789012
" }, "ArnLike": { "aws:SourceArn": "arn:aws:iot:us-east-1:123456789012
:rule/rulename
" } } } ] }使用 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 這是授予 AWS IoT 管理員 DynamoDB 存取權的政策文件範例。
使用 create-policy 命令,在擔任 角色時授予對 AWS 資源的 AWS IoT 存取權,並在
my-iot-policy.json
檔案中傳遞:aws iam create-policy --policy-name
my-iot-policy
--policy-document file://my-iot-policy.json
如需如何在 政策 AWS 服務 中授予 存取權的詳細資訊 AWS IoT,請參閱 建立 AWS 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
"