AWS IoT ルールに必要なアクセスを付与する - AWS IoT Core

AWS IoT ルールに必要なアクセスを付与する

IAM ロールは、各ルールからアクセスできる AWS リソースを制御するために使用します。ルールを作成するには、必要な AWS リソースへのアクセスを許可するポリシーを指定した IAM ロールを作成する必要があります。AWS IoT は、ルールの実装時にこのロールを引き受けます。

必要なアクセス (AWS CLI) を AWS IoT ルールに付与する IAM ロール および AWS IoT ポリシーを作成するには、次のステップを実行します。
  1. 次の信頼ポリシードキュメントを iot-role-trust.json という名前のファイルに保存します。このポリシーでは、ロールを適用するアクセス許可が AWS IoT に付与されます。

    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" } }
  2. 次の JSON を my-iot-policy.json という名前のファイルに保存します。

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "dynamodb:*", "Resource": "*" } ] }

    この JSON は、DynamoDB への管理者アクセス権を AWS IoT に付与するポリシードキュメントの例です。

    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" } }
  3. ポリシーをロールにアタッチするには、attach-role-policy コマンドを使用します。

    aws iam attach-role-policy --role-name my-iot-role --policy-arn "arn:aws:iam::123456789012:policy/my-iot-policy"

ルールエンジンアクセスを取り消す

ルールエンジンへのアクセスを即時に取り消すには、次の手順を実行します。

  1. 信頼ポリシーから iot.amazonaws.com を削除する

  2. ステップに従って iot ロールセッションを取り消す