AWS IoT ルールに必要なアクセスを付与する
IAM ロールは、各ルールからアクセスできる AWS リソースを制御するために使用します。ルールを作成するには、必要な AWS リソースへのアクセスを許可するポリシーを指定した IAM ロールを作成する必要があります。AWS IoT は、ルールの実装時にこのロールを引き受けます。
必要なアクセス (AWS CLI) を AWS IoT ルールに付与する IAM ロール および AWS IoT ポリシーを作成するには、次のステップを実行します。
-
次の信頼ポリシードキュメントを
iot-role-trust.jsonという名前のファイルに保存します。このポリシーでは、ロールを適用するアクセス許可が AWS IoT に付与されます。create-role コマンドを使用し、
iot-role-trust.jsonファイルを指定して IAM ロールを作成します。aws iam create-role --role-namemy-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という名前のファイルに保存します。この JSON は、DynamoDB への管理者アクセス権を AWS IoT に付与するポリシードキュメントの例です。
create-policy コマンドを使用して、ロールの引き受け時に AWS リソースへのアクセス権を AWS IoT に付与し、
my-iot-policy.jsonファイルを渡します。aws iam create-policy --policy-namemy-iot-policy--policy-document file://my-iot-policy.jsonAWS のサービス のポリシーで 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-namemy-iot-role--policy-arn "arn:aws:iam::123456789012:policy/my-iot-policy"
ルールエンジンアクセスを取り消す
ルールエンジンへのアクセスを即時に取り消すには、次の手順を実行します。
-
信頼ポリシーから iot.amazonaws.com を削除する
-
ステップに従って iot ロールセッションを取り消す