翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS IoT Greengrass のアクション、リソース、および条件キー
AWS IoT Greengrass (サービスプレフィックス: greengrass) では、IAM アクセス許可ポリシーで使用できるように、以下のサービス固有のリソースやアクション、条件コンテキストキーが用意されています。
リファレンス:
-
このサービスを設定する方法について説明します。
-
このサービスで使用可能な API オペレーションのリストを表示します。
-
IAM アクセス許可ポリシーを使用して、このサービスとそのリソースを保護する方法を学びます。
AWS IoT Greengrass で定義されるアクション
IAM ポリシーステートメントの Action エレメントでは、以下のアクションを指定できます。ポリシーを使用して、 AWSでオペレーションを実行するアクセス許可を付与します。ポリシーでアクションを使用する場合は、通常、同じ名前の API オペレーションまたは CLI コマンドへのアクセスを許可または拒否します。ただし、場合によっては、1 つのアクションによって複数のオペレーションへのアクセスが制御されます。あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。
Actions テーブルのアクセスレベル列は、アクションの分類方法 (List、Read、Permissions Management、Tagging) を示しています。このように分類することで、ポリシーで使用する際にアクションで付与するアクセスレベルを理解しやすくなります。アクセスレベルの詳細については、ポリシー概要の「アクセスレベル」を参照してください。
[アクション] テーブルの [リソースタイプ] 列は、各アクションがリソースレベルの許可をサポートしているかどうかを示します。この列に値がない場合は、ポリシーステートメントの Resource 要素で、ポリシーが適用されるすべてのリソース (「*」) を指定する必要があります。列にリソースタイプが含まれる場合、そのアクションを含むステートメントでそのタイプの ARN を指定できます。アクションで 1 つ以上のリソースが必須となっている場合、呼び出し元には、それらのリソースを伴うアクションを使用するための許可が付与されている必要があります。必須リソースは、アスタリスク (*) でテーブルに示されています。IAM ポリシーの Resource 要素でリソースアクセスを制限する場合は、必要なリソースタイプごとに ARN またはパターンを含める必要があります。一部のアクションでは、複数のリソースタイプがサポートされています。リソースタイプがオプション (必須として示されていない) の場合、オプションのリソースタイプのいずれかを使用することを選択できます。
[アクション] テーブルの [条件キー] 列には、ポリシーステートメントの Condition 要素で指定できるキーが含まれます。サービスのリソースに関連付けられている条件キーの詳細については、[リソースタイプ] テーブルの [条件キー] 列を参照してください。
Actions テーブルの Dependent actions 列には、アクションを正常に呼び出すために必要な追加のアクセス許可が表示されます。これらのアクセス許可は、アクション自体のアクセス許可に加えて必要になる場合があります。アクションが依存アクションを指定すると、それらの依存関係は、テーブルにリストされている最初のリソースだけでなく、そのアクションに定義された追加のリソースに適用される場合があります。
注記
リソース条件キーは、リソースタイプテーブルに一覧表示されています。アクションに適用されるリソースタイプへのリンクは、[アクション] テーブルの [リソースタイプ (* 必須)] 列にあります。[リソースタイプ] テーブルのリソースタイプには、[アクション] テーブルのアクションに適用されるリソース条件キーである、[条件キー] 列が含まれています。
以下の表の列の詳細については、「アクションテーブル」を参照してください。
| アクション | 説明 | アクセスレベル | リソースタイプ (* 必須) | 条件キー | 依存アクション |
|---|---|---|---|---|---|
| AssociateRoleToGroup | ロールをグループに関連付けるアクセス許可を付与 ロールのアクセス許可は、Greengrass コア Lambda 関数とコネクタが他の AWS サービスでアクションを実行することを許可する必要があります | 書き込み | |||
| AssociateServiceRoleToAccount | ロールをアカウントに関連付けるアクセス許可を付与します。 AWS IoT Greengrass はこのロールを使用して Lambda 関数と AWS IoT リソースにアクセスします | 権限の管理 | |||
| CreateConnectorDefinition | コネクタ定義を作成する許可を付与 | Write | |||
| CreateConnectorDefinitionVersion | 既存のコネクタ定義のバージョンを作成する許可を付与 | Write | |||
| CreateCoreDefinition | コア定義を作成する許可を付与 | Write | |||
| CreateCoreDefinitionVersion | 既存のコア定義のバージョンを作成する許可を付与。Greengrass グループには、それぞれ 1 つの Greengrass コアが含まれている必要があります。 | Write | |||
| CreateDeployment | デプロイを作成する許可を付与 | Write | |||
| CreateDeviceDefinition | デバイス定義を作成する許可を付与 | Write | |||
| CreateDeviceDefinitionVersion | 既存のデイバス定義のバージョンを作成する許可を付与 | Write | |||
| CreateFunctionDefinition | Lambda 関数とその設定のリストを含むグループで使用される Lambda 関数定義を作成する許可を付与 | Write | |||
| CreateFunctionDefinitionVersion | 既存の Lambda 関数定義のバージョンを作成する許可を付与 | 書き込み | |||
| CreateGroup | グループを作成するアクセス許可を付与 | 書き込み | |||
| CreateGroupCertificateAuthority | グループの CA を作成、または既存の CA をローテーションする許可を付与 | Write | |||
| CreateGroupVersion | すでに定義されているグループのバージョンを作成する許可を付与 | Write | |||
| CreateLoggerDefinition | ロガー定義を作成する許可を付与 | Write | |||
| CreateLoggerDefinitionVersion | 既存のロガー定義のバージョンを作成する許可を付与 | Write | |||
| CreateResourceDefinition | グループ内で使用されるリソースのリストを含むリソース定義を作成する許可を付与 | Write | |||
| CreateResourceDefinitionVersion | 既存のリソース定義のバージョンを作成する許可を付与 | 書き込み | |||
| CreateSoftwareUpdateJob | Greengrass コアをトリガーして実行中のソフトウェアを更新する AWS IoT ジョブを作成するアクセス許可を付与します | 書き込み | |||
| CreateSubscriptionDefinition | サブスクリプション定義を作成する許可を付与 | Write | |||
| CreateSubscriptionDefinitionVersion | 既存のサブスクリプション定義のバージョンを作成する許可を付与 | Write | |||
| DeleteConnectorDefinition | コネクタ定義を削除する許可を付与 | Write | |||
| DeleteCoreDefinition | コア定義を削除する許可を付与。デプロイで現在使用されている定義を削除すると、今後のデプロイに影響します | Write | |||
| DeleteDeviceDefinition | デバイス定義を削除する許可を付与。デプロイで現在使用されている定義を削除すると、今後のデプロイに影響します | Write | |||
| DeleteFunctionDefinition | Lambda 関数定義を削除する許可を付与。デプロイで現在使用されている定義を削除すると、今後のデプロイに影響します | Write | |||
| DeleteGroup | デプロイで現在使用されていないグループを削除する許可を付与 | Write | |||
| DeleteLoggerDefinition | ロガー定義を削除する許可を付与。デプロイで現在使用されている定義を削除すると、今後のデプロイに影響します | Write | |||
| DeleteResourceDefinition | リソース定義を削除する許可を付与 | Write | |||
| DeleteSubscriptionDefinition | サブスクリプション定義を削除する許可を付与。デプロイで現在使用されている定義を削除すると、今後のデプロイに影響します | Write | |||
| DisassociateRoleFromGroup | ロールのグループへの関連付けを解除する許可を付与 | Write | |||
| DisassociateServiceRoleFromAccount | アカウントからサービスロールの関連付けを解除する許可を付与。サービスロールがない場合、デプロイは動作しません。 | Write | |||
| Discover | Greengrass コアに接続するために必要な情報を取得する許可を付与 | Read | |||
| GetAssociatedRole | グループに関連付けられているロールを取得する許可を付与 | Read | |||
| GetBulkDeploymentStatus | 一括デプロイのステータスを返すアクセス許可を付与 | Read | |||
| GetConnectivityInfo | コアの接続情報を取得する許可を付与 | Read | |||
| GetConnectorDefinition | コネクタ定義に関する情報を取得する許可を付与 | Read | |||
| GetConnectorDefinitionVersion | コネクタ定義バージョンに関する情報を取得する許可を付与 | Read | |||
| GetCoreDefinition | コア定義に関する情報を取得する許可を付与 | Read | |||
| GetCoreDefinitionVersion | コア定義バージョンに関する情報を取得する許可を付与 | Read | |||
| GetDeploymentStatus | デプロイのステータスを返すアクセス許可を付与 | Read | |||
| GetDeviceDefinition | デバイス定義に関する情報を取得する許可を付与 | Read | |||
| GetDeviceDefinitionVersion | デバイス定義バージョンに関する情報を取得する許可を付与 | Read | |||
| GetFunctionDefinition | Lambda 関数定義に関する情報 (作成時刻や最新バージョンなど) を取得する許可を付与 | Read | |||
| GetFunctionDefinitionVersion | バージョンに含まれる Lambda 関数やその設定など、Lambda 関数定義バージョンに関する情報を取得する許可を付与 | Read | |||
| GetGroup | グループに関する情報を取得する許可を付与 | Read | |||
| GetGroupCertificateAuthority | グループに関連付けられた CA のパブリックキーを返すアクセス許可を付与 | Read | |||
| GetGroupCertificateConfiguration | グループが使用する CA の設定を取得する許可を付与 | Read | |||
| GetGroupVersion | グループのバージョンに関する情報を取得する許可を付与 | Read | |||
| GetLoggerDefinition | ロガー定義に関する情報を取得する許可を付与 | Read | |||
| GetLoggerDefinitionVersion | ロガー定義バージョンに関する情報を取得する許可を付与 | Read | |||
| GetResourceDefinition | リソース定義に関する情報 (作成時刻や最新バージョンなど) を取得する許可を付与 | Read | |||
| GetResourceDefinitionVersion | バージョンに含まれるリソースなど、リソース定義バージョンに関する情報を取得する許可を付与 | Read | |||
| GetServiceRoleForAccount | アカウントにアタッチされているサービスのロールを取得する許可を付与 | Read | |||
| GetSubscriptionDefinition | サブスクリプション定義に関する情報を取得する許可を付与 | Read | |||
| GetSubscriptionDefinitionVersion | サブスクリプション定義バージョンに関する情報を取得する許可を付与 | Read | |||
| GetThingRuntimeConfiguration | モノのランタイム設定を取得する許可を付与 | Read | |||
| ListBulkDeploymentDetailedReports | 一括デプロイオペレーションで開始されたデプロイとそれらの現在のデプロイステータスのページ分割リストを取得する許可を付与 | Read | |||
| ListBulkDeployments | 一括デプロイのリストを取得する許可を付与 | リスト | |||
| ListConnectorDefinitionVersions | コネクタ定義のバージョンを一覧表示する許可を付与 | リスト | |||
| ListConnectorDefinitions | コネクタ定義のリストを取得する許可を付与 | リスト | |||
| ListCoreDefinitionVersions | コア定義のバージョンを一覧表示する許可を付与 | リスト | |||
| ListCoreDefinitions | コア定義のリストを取得する許可を付与 | リスト | |||
| ListDeployments | グループのすべてのデプロイのリストを取得する許可を付与 | リスト | |||
| ListDeviceDefinitionVersions | デバイス定義のバージョンを一覧表示する許可を付与 | リスト | |||
| ListDeviceDefinitions | デバイス定義のリストを取得する許可を付与 | リスト | |||
| ListFunctionDefinitionVersions | Lambda 関数定義のバージョンを一覧表示する許可を付与 | リスト | |||
| ListFunctionDefinitions | Lambda 関数定義のリストを取得する許可を付与 | リスト | |||
| ListGroupCertificateAuthorities | グループの現在の CA のリストを取得する許可を付与 | リスト | |||
| ListGroupVersions | グループのバージョンを一覧表示する許可を付与 | リスト | |||
| ListGroups | グループのリストを取得する許可を付与 | リスト | |||
| ListLoggerDefinitionVersions | ロガー定義のバージョンを一覧表示する許可を付与 | リスト | |||
| ListLoggerDefinitions | ロガー定義のリストを取得する許可を付与 | リスト | |||
| ListResourceDefinitionVersions | リソース定義のバージョンを一覧表示する許可を付与 | リスト | |||
| ListResourceDefinitions | リソース定義のリストを取得する許可を付与 | リスト | |||
| ListSubscriptionDefinitionVersions | サブスクリプション定義のバージョンを一覧表示する許可を付与 | リスト | |||
| ListSubscriptionDefinitions | サブスクリプション定義のリストを取得する許可を付与 | リスト | |||
| ListTagsForResource | リソースのタグを一覧表示する許可を付与 | Read | |||
| ResetDeployments | グループのデプロイをリセットする許可を付与 | Write | |||
| StartBulkDeployment | 1 回のオペレーションで複数のグループをデプロイする許可を付与 | Write | |||
| StopBulkDeployment | 一括デプロイの実行を停止する許可を付与 | Write | |||
| TagResource | リソースにタグを追加するアクセス許可を付与します | タグ付け | |||
| UntagResource | リソースからタグを削除する許可を付与 | タグ付け | |||
| UpdateConnectivityInfo | Greengrass コアの接続情報を更新する許可を付与。このコアを持つグループに属するすべてのデバイスは、コアの場所を見つけてそれに接続するためにこの情報を受け取ります。 | Write | |||
| UpdateConnectorDefinition | コネクタ定義を更新する許可を付与 | Write | |||
| UpdateCoreDefinition | コア定義を更新する許可を付与 | Write | |||
| UpdateDeviceDefinition | デバイス定義を更新する許可を付与 | Write | |||
| UpdateFunctionDefinition | Lambda 関数定義を更新する許可を付与 | Write | |||
| UpdateGroup | グループを更新する許可を付与 | Write | |||
| UpdateGroupCertificateConfiguration | グループの証明書の有効期限を更新する許可を付与 | Write | |||
| UpdateLoggerDefinition | ロガー定義を更新する許可を付与 | Write | |||
| UpdateResourceDefinition | リソース定義を更新する許可を付与 | Write | |||
| UpdateSubscriptionDefinition | サブスクリプション定義を更新する許可を付与 | Write | |||
| UpdateThingRuntimeConfiguration | モノのランタイム設定を更新する許可を付与 | Write |
AWS IoT Greengrass で定義されるリソースタイプ
以下のリソースタイプは、このサービスによって定義され、IAM アクセス許可ポリシーステートメントの Resource エレメントで使用できます。アクションテーブルの各アクションは、そのアクションで指定できるリソースタイプを示しています。リソースタイプは、ポリシーに含めることができる条件キーを定義することもできます。これらのキーは、[リソースタイプ] テーブルの最後の列に表示されます。以下の表の列の詳細については、「リソースタイプテーブル」を参照してください。
| リソースタイプ | ARN | 条件キー |
|---|---|---|
| connectivityInfo |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/things/${ThingName}/connectivityInfo
|
|
| certificateAuthority |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/groups/${GroupId}/certificateauthorities/${CertificateAuthorityId}
|
|
| deployment |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/groups/${GroupId}/deployments/${DeploymentId}
|
|
| bulkDeployment |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/bulk/deployments/${BulkDeploymentId}
|
|
| group |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/groups/${GroupId}
|
|
| groupVersion |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/groups/${GroupId}/versions/${VersionId}
|
|
| coreDefinition |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/cores/${CoreDefinitionId}
|
|
| coreDefinitionVersion |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/cores/${CoreDefinitionId}/versions/${VersionId}
|
|
| deviceDefinition |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/devices/${DeviceDefinitionId}
|
|
| deviceDefinitionVersion |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/devices/${DeviceDefinitionId}/versions/${VersionId}
|
|
| functionDefinition |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/functions/${FunctionDefinitionId}
|
|
| functionDefinitionVersion |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/functions/${FunctionDefinitionId}/versions/${VersionId}
|
|
| subscriptionDefinition |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/subscriptions/${SubscriptionDefinitionId}
|
|
| subscriptionDefinitionVersion |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/subscriptions/${SubscriptionDefinitionId}/versions/${VersionId}
|
|
| loggerDefinition |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/loggers/${LoggerDefinitionId}
|
|
| loggerDefinitionVersion |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/loggers/${LoggerDefinitionId}/versions/${VersionId}
|
|
| resourceDefinition |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/resources/${ResourceDefinitionId}
|
|
| resourceDefinitionVersion |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/resources/${ResourceDefinitionId}/versions/${VersionId}
|
|
| connectorDefinition |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/connectors/${ConnectorDefinitionId}
|
|
| connectorDefinitionVersion |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/connectors/${ConnectorDefinitionId}/versions/${VersionId}
|
|
| thing |
arn:${Partition}:iot:${Region}:${Account}:thing/${ThingName}
|
|
| thingRuntimeConfig |
arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/things/${ThingName}/runtimeconfig
|
AWS IoT Greengrass の条件キー
AWS IoT Greengrass では、IAM ポリシーの Condition要素で使用できる以下の条件キーを定義します。これらのキーを使用して、ポリシーステートメントが適用される条件をさらに絞り込むことができます。以下の表の列の詳細については、「条件キーテーブル」を参照してください。
すべてのサービスで使用できるグローバル条件キーを表示するには、AWS 「グローバル条件コンテキストキー」を参照してください。
| 条件キー | 説明 | [Type] (タイプ) |
|---|---|---|
| aws:RequestTag/${TagKey} | 各必須タグの許可された値のセットでアクセスをフィルタリングします | 文字列 |
| aws:ResourceTag/${TagKey} | リソースに関連付けられたタグ値に基づいて、アクセスをフィルタリングする | 文字列 |
| aws:TagKeys | リクエスト内の必須タグの存在でアクセスをフィルタリングします | ArrayOfString |