AWS IoT Greengrass リソースのタグ付け - AWS IoT Greengrass

AWS IoT Greengrass Version 1 は 2023 年 6 月 30 日に延長ライフフェーズに参加しました。詳細については、「AWS IoT Greengrass V1 メンテナンスポリシー」を参照してください。この日以降、 AWS IoT Greengrass V1 は機能、機能強化、バグ修正、またはセキュリティパッチを提供する更新をリリースしません。で実行されるデバイスは中断 AWS IoT Greengrass V1 されず、引き続き動作し、クラウドに接続します。に移行することを強くお勧めします。 AWS IoT Greengrass Version 2これにより、重要な新機能が追加され、プラットフォーム のサポートが追加されます

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS IoT Greengrass リソースのタグ付け

タグにより、AWS IoT Greengrass グループを整理および整理することができます。タグを使用して、グループ、一括デプロイ、およびグループに追加されたコア、デバイス、その他のリソースにメタデータを割り当てることができます。タグを IAM ポリシーで使用して、Greengrass リソースへの条件付きアクセスを定義することもできます。

注記

現在のところ、Greengrass リソースタグは AWS IoT 請求グループまたはコスト配分レポートではサポートされていません。

タグの基本

タグを使用すると、AWS IoT Greengrass リソースを目的、所有者、環境などさまざまな条件で分類することができます。同じタイプのリソースが多い場合に、アタッチしたタグに基づいて特定のリソースをすばやく識別できます。タグはキーとオプションの値で構成されており、どちらもお客様側が定義します。各リソースタイプに対して一連のタグキーを設定することをお勧めします。一貫性のある一連のタグキーを使用することで、リソースの管理が容易になります。例えば、グループに対して一連のタグを定義でき、それによりコアデバイスの施設の場所の追跡に役立ちます。詳細については、「AWSタグ付け戦略」を参照してください。

AWS IoT コンソールのタグ付けのサポート

AWS IoT コンソールで Greengrass Group リソースのタグを作成、表示、管理できます。タグを作成する前に、タグの制限に注意してください。詳細については、「Amazon Web Services 全般のリファレンス」の「タグの命名規則と使用規則」を参照してください。

グループの作成時にタグを割り当てるには

グループを作成するときに、グループにタグを割り当てることができます。タグ付け入力フィールドを表示するには、[Tags] (タグ) セクションで[Add new tag] (新しいタグの追加) を選択します。

グループ設定ページからタグを表示および管理するには

[View settings] (設定の表示) を選択すると、グループ設定ページからタグを表示および管理することができます。グループの [Tags] (タグ) セクションで、 [Manage tags] (タグの管理) を選択して、グループタグを追加、編集、または削除します。

AWS IoT Greengrass API のタグ付けのサポート

タグ付けをサポートしている AWS IoT Greengrass リソースのタグの作成、一覧表示、および管理には、AWS IoT Greengrass API を使用できます。タグを作成する前に、タグの制限に注意してください。詳細については、「Amazon Web Services 全般のリファレンス」の「タグの命名規則と使用規則」を参照してください。

  • リソースの作成中にタグを追加するには、リソースの tags プロパティで定義します。

  • リソースの作成後にタグを追加する、またはタグ値を更新するには、TagResource アクションを使用します。

  • リソースからタグを削除するには、UntagResource アクションを使用します。

  • リソースに関連付けられたタグを取得するには、ListTagsForResource アクションを使用するか、リソースを取得してその tags プロパティを調べます。

次の表は、AWS IoT Greengrass API でタグを付けることができるリソースと、それに対応する Create および Get アクションを示しています。

リストで次のアクションを使用して、タグ付けをサポートしているリソースのタグを管理します。

  • TagResource。リソースにタグを追加します。タグのキーと値のペアの値を変更するためにも使用されます。

  • ListTagsForResource。リソースのタグをリスト表示します。

  • UntagResource。リソースからタグを削除します。

リソースでのタグの追加または削除は随時行うことができます。タグキーの値を変更するには、同じキーと新しい値を定義するリソースにタグを追加します。古い値は新しい値を上書きします。値を空の文字列に設定することはできますが、値を null に設定することはできません。

リソースを削除すると、リソースに関連付けられているすべてのタグも削除されます。

注記

AWS IoT モノに割り当てることができる属性と、リソースタグを混同しないようにしてください。Greengrass コアは AWS IoT のモノですが、このトピックで説明されているリソースタグは、コアのモノではなく、CoreDefinition にアタッチされます。

IAM ポリシーでのタグの使用

IAM ポリシーでは、リソースタグを使用して、ユーザーのアクセスとアクセス許可を制御できます。例えば、ポリシーにより、ユーザーは特定のタグがあるリソースのみを作成できます。ポリシーにより、特定のタグを持つリソースをユーザーが作成または変更できないよう制限することもできます。作成時にリソースにタグを付けることができるため (作成時のタグ付けと呼ばれます)、後でカスタムタグ付けスクリプトを実行する必要はありません。タグを使用して新しい環境が起動されるときは、対応する IAM アクセス権限が自動的に適用されます。

次の条件コンテキストキーと値は、ポリシーの Condition 要素 (Condition ブロックとも呼ばれます) で使用できます。

greengrass:ResourceTag/tag-key: tag-value

特定のタグを持つリソースに対してユーザーアクションを許可または拒否します。

aws:RequestTag/tag-key: tag-value

タグ付け可能なリソースでタグを作成または変更する API リクエストを作成する場合に、特定のタグが使用されている (または、使用されていない) ことを要求します。

aws:TagKeys: [tag-key, ...]

タグ付け可能なリソースを作成または変更する API リクエストを作成する場合に、特定のタグキーのセットが使用されている (または、使用されていない) ことを要求します。

条件コンテキストキーと値は、タグ付け可能なリソースで動作する AWS IoT Greengrass アクションでのみ使用できます。これらのアクションは、必須パラメータとしてリソースを受け取ります。例えば、GetGroupVersion で条件付きアクセスを設定できます。AssociateServiceRoleToAccount で条件付きアクセスを設定することはできません。これは、タグ付け可能なリソース (グループ、コア定義、デバイス定義など) が、リクエストで参照されるためです。

詳細については、「IAM ユーザーガイド」の「タグを使用したアクセスの制御‭」および「IAM JSON ポリシーリファレンス」を参照してください。JSON ポリシーリファレンスには、IAM の JSON ポリシーの要素、変数、および評価ロジックの詳細な構文、説明、および例が含まれています。

IAM ポリシーの例

次のポリシー例では、ベータユーザーをベータリソースでのアクションのみに制限する、タグベースのアクセス権限を適用します。

  • 最初のステートメントによって、IAM ユーザーは env=beta タグのみが付いたリソースを操作できます。

  • 2 番目のステートメントにより、IAM ユーザーは env=beta タグをリソースから削除できなくなります。これにより、ユーザーは自分のアクセスを削除することがありません。

    注記

    タグを使用してリソースへのアクセスを制御する場合は、同じリソースに対するタグの追加または削除をユーザーに許可するアクセス権限も管理する必要があります。そうしないと、場合によっては、ユーザーはそのタグを変更することで、制限を回避してリソースにアクセスできる可能性があります。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "greengrass:*", "Resource": "*", "Condition": { "StringEquals": { "greengrass:ResourceTag/env": "beta" } } }, { "Effect": "Deny", "Action": "greengrass:UntagResource", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/env": "beta" } } } ] }

作成時にユーザーにタグ付けを許可するには、最初に適切なアクセス権限を付与する必要があります。次のポリシー例では、greengrass:TagResource およびgreengrass:CreateGroup アクションに "aws:RequestTag/env": "beta" 条件が含まれています。これにより、ユーザーは、env=beta が指定されたグループにタグを付ける場合のみ、グループを作成できます。その結果、実質的にユーザーに新しいグループへのタグ付けを強制します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "greengrass:TagResource", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/env": "beta" } } }, { "Effect": "Allow", "Action": "greengrass:CreateGroup", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/env": "beta" } } } ] }

次のスニペットは、タグ値を 1 つのリストとして指定して、1 つのタグキーに対して複数のタグ値を指定することもできます。

"StringEquals" : { "greengrass:ResourceTag/env" : ["dev", "test"] }

以下も参照してください。