AWS IoT Greengrass V2 のアクション、リソース、および条件キー
AWS IoT Greengrass V2 (サービスプレフィックス: greengrass
) では、IAM アクセス許可ポリシーで使用できるように、以下のサービス固有のリソース、アクションおよび条件コンテキストキーが用意されています。
参照:
-
このサービスを設定する方法について説明します。
-
このサービスで使用可能な API オペレーションのリストを表示します。
-
IAM アクセス許可ポリシーを使用して、このサービスとそのリソースを保護する方法を学びます。
AWS IoT Greengrass V2 で定義されるアクション
IAM ポリシーステートメントの Action
エレメントでは、以下のアクションを指定できます。ポリシーを使用して、AWS でオペレーションを実行するアクセス許可を付与します。ポリシーでアクションを使用する場合は、通常、同じ名前の API オペレーションまたは CLI コマンドへのアクセスを許可または拒否します。ただし、場合によっては、1 つのアクションによって複数のオペレーションへのアクセスが制御されます。あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。
[アクション] テーブルの [リソースタイプ] 列は、各アクションがリソースレベルの許可をサポートしているかどうかを示します。この列に値がない場合は、ポリシーステートメントの Resource
要素で、ポリシーが適用されるすべてのリソース (「*」) を指定する必要があります。列にリソースタイプが含まれる場合、そのアクションを含むステートメントでそのタイプの ARN を指定できます。アクションで 1 つ以上のリソースが必須となっている場合、呼び出し元には、それらのリソースを伴うアクションを使用するための許可が付与されている必要があります。必須リソースは、アスタリスク (*) でテーブルに示されています。IAM ポリシーの Resource
要素でリソースアクセスを制限する場合は、必要なリソースタイプごとに ARN またはパターンを含める必要があります。一部のアクションでは、複数のリソースタイプがサポートされています。リソースタイプがオプション (必須として示されていない) の場合、オプションのリソースタイプのいずれかを使用することを選択できます。
[アクション] テーブルの [条件キー] 列には、ポリシーステートメントの Condition
要素で指定できるキーが含まれます。サービスのリソースに関連付けられている条件キーの詳細については、[リソースタイプ] テーブルの [条件キー] 列を参照してください。
注記
リソース条件キーは、リソースタイプテーブルに一覧表示されています。アクションに適用されるリソースタイプへのリンクは、[アクション] テーブルの [リソースタイプ (* 必須)] 列にあります。[リソースタイプ] テーブルのリソースタイプには、[アクション] テーブルのアクションに適用されるリソース条件キーである、[条件キー] 列が含まれています。
以下の表の列の詳細については、「アクションテーブル」を参照してください。
アクション | 説明 | アクセスレベル | リソースタイプ (* 必須) | 条件キー | 依存アクション |
---|---|---|---|---|---|
AssociateServiceRoleToAccount | ロールをアカウントに関連付けるアクセス許可を付与します。AWSIoT Greengrass は、このロールを使用して Lambda 関数と AWS IoT リソースにアクセスします | 権限の管理 |
iam:PassRole |
||
BatchAssociateClientDeviceWithCoreDevice | クライアントデバイスのリストをコアデバイスに関連付けるアクセス許可を付与します。 | 書き込み | |||
BatchDisassociateClientDeviceFromCoreDevice | コアデバイスからクライアントデバイスのリストの関連付けを解除するアクセス許可を付与します。 | 書き込み | |||
CancelDeployment | デプロイをキャンセルする許可を付与 | 書き込み |
iot:CancelJob iot:DeleteThingShadow iot:DescribeJob iot:DescribeThing iot:DescribeThingGroup iot:GetThingShadow iot:UpdateJob iot:UpdateThingShadow |
||
CreateComponentVersion | コンポーネントを作成する許可を付与 | 書き込み | |||
CreateDeployment | デプロイを作成する許可を付与 | 書き込み |
iot:CancelJob iot:CreateJob iot:DeleteThingShadow iot:DescribeJob iot:DescribeThing iot:DescribeThingGroup iot:GetThingShadow iot:UpdateJob iot:UpdateThingShadow |
||
DeleteComponent | コンポーネントを削除する許可を付与 | 書き込み | |||
DeleteCoreDevice | AWS IoT のモノである AWS IoT Greengrass コアデバイスを削除するアクセス許可を付与します。この操作は、コアデバイスのリストからコアデバイスを削除します。この操作では AWS IoT のモノは削除されません | 書き込み |
iot:DescribeJobExecution |
||
DeleteDeployment | デプロイを削除するアクセス許可を付与。アクティブなデプロイを削除する前にキャンセルする必要があります | 書き込み |
iot:DeleteJob |
||
DescribeComponent | コンポーネントのバージョンのメタデータを取得する許可を付与 | 読み込み | |||
DisassociateServiceRoleFromAccount | アカウントからサービスロールの関連付けを解除する許可を付与。サービスロールがない場合、デプロイは動作しません。 | 書き込み | |||
GetComponent | コンポーネントのバージョンの recipe を取得する許可を付与 | 読み込み | |||
GetComponentVersionArtifact | パブリックコンポーネントアーティファクトをダウンロードするための署名付き URL を取得する許可を付与 | 読み込み | |||
GetConnectivityInfo | Greengrass コアデバイスの接続情報を取得する許可を付与 | 読み込み |
iot:GetThingShadow |
||
GetCoreDevice | AWS IoT Greengrass コアデバイスのメタデータを取得するアクセス許可を付与します | 読み込み | |||
GetDeployment | デプロイを取得する許可を付与 | 読み込み |
iot:DescribeJob iot:DescribeThing iot:DescribeThingGroup iot:GetThingShadow |
||
GetServiceRoleForAccount | アカウントにアタッチされているサービスのロールを取得する許可を付与 | 読み込み | |||
ListClientDevicesAssociatedWithCoreDevice | AWS IoT Greengrass コアデバイス関連付けられたクライエントデバイスのページ分割されたリストを取得する許可を付与します。 | リスト | |||
ListComponentVersions | コンポーネントのすべてのバージョンのページ分割されたリストを取得する許可を付与 | リスト | |||
ListComponents | コンポーネント概要のページ分割されたリストを取得する許可を付与 | リスト | |||
ListCoreDevices | AWS IoT Greengrass コアデバイスのページ分割されたリストを取得するアクセス許可を付与します | リスト | |||
ListDeployments | デプロイのページ分割されたリストを取得する許可を付与 | リスト |
iot:DescribeJob iot:DescribeThing iot:DescribeThingGroup iot:GetThingShadow |
||
ListEffectiveDeployments | AWS IoT Greengrass が AWS IoT Greengrass コアデバイスに送信するデプロイジョブのページ分割されたリストを取得するアクセス許可を付与します | リスト |
iot:DescribeJob iot:DescribeJobExecution iot:DescribeThing iot:DescribeThingGroup iot:GetThingShadow |
||
ListInstalledComponents | AWS IoT Greengrass コアデバイスが実行するコンポーネントのページ分割されたリストを取得するアクセス許可を付与します | リスト | |||
ListTagsForResource | リソースのタグを一覧表示する許可を付与 | 読み込み | |||
ResolveComponentCandidates | デプロイのコンポーネント、バージョン、およびプラットフォームの要件を満たすコンポーネントを一覧表示する許可を付与 | リスト | |||
TagResource | リソースにタグを追加する許可を付与 | タグ付け | |||
UntagResource | リソースからタグを削除する許可を付与 | タグ付け | |||
UpdateConnectivityInfo | Greengrass コアの接続情報を更新する許可を付与。このコアを持つグループに属するすべてのデバイスは、コアの場所を見つけてそれに接続するためにこの情報を受け取ります。 | 書き込み |
iot:GetThingShadow iot:UpdateThingShadow |
AWS IoT Greengrass V2 で定義されるリソースタイプ
以下のリソースタイプは、このサービスによって定義され、IAM アクセス許可ポリシーステートメントの Resource
エレメントで使用できます。アクションテーブルの各アクションは、そのアクションで指定できるリソースタイプを示しています。リソースタイプは、ポリシーに含めることができる条件キーを定義することもできます。これらのキーは、[リソースタイプ] テーブルの最後の列に表示されます。以下の表の列の詳細については、「リソースタイプテーブル」を参照してください。
リソースタイプ | ARN | 条件キー |
---|---|---|
connectivityInfo |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/things/${ThingName}/connectivityInfo
|
|
component |
arn:${Partition}:greengrass:${Region}:${Account}:components:${ComponentName}
|
|
componentVersion |
arn:${Partition}:greengrass:${Region}:${Account}:components:${ComponentName}:versions:${ComponentVersion}
|
|
coreDevice |
arn:${Partition}:greengrass:${Region}:${Account}:coreDevices:${CoreDeviceThingName}
|
|
deployment |
arn:${Partition}:greengrass:${Region}:${Account}:deployments:${DeploymentId}
|
AWS IoT Greengrass V2 の条件キー
AWS IoT Greengrass V2 では、IAM ポリシーの Condition
要素で使用できる以下の条件キーを定義します。これらのキーを使用して、ポリシーステートメントが適用される条件をさらに絞り込むことができます。以下の表の列の詳細については、「条件キーテーブル」を参照してください。
すべてのサービスで使用できるグローバル条件キーを確認するには、「使用できるグローバル条件キー」を参照してください。
条件キー | 説明 | [Type] (タイプ) |
---|---|---|
aws:RequestTag/${TagKey} | リクエスト内のタグキーおよび値のペアによってアクセスをフィルタリングします。 | 文字列 |
aws:ResourceTag/${TagKey} | 特定のリソースに関連付けられているタグのキーおよび値のペアをチェックして、アクセスをフィルタリングします。 | 文字列 |
aws:TagKeys | リクエストで渡されたタグキーをチェックして、アクセスをフィルタリングします。 | ArrayOfString |