AWS Security Hub リソースのタグ付け - AWS Security Hub

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

AWS Security Hub リソースのタグ付け

タグは、特定のタイプの AWS セキュリティハブリソースなど、AWS リソースをオプションで定義および割り当てることができるラベルです。タグを使用することで、目的、所有者、環境、その他の条件など、さまざまな方法でリソースを特定、分類および管理できます。例えば、タグを使用して、リソースを区別したり、特定のコンプライアンス要件やワークフローをサポートするリソースを識別したり、コストを割り当てたりできます。

タグは、自動化ルール、設定ポリシー、Hub リソースという種類の Security Hub リソースに割り当てることができます。

タグ付けの基本

リソースには、最大 50 個のタグを含めることができます。タグはそれぞれ、1 つの必須タグキーとオプションの 1 つのタグ値で構成されており、どちらもお客様側が定義します。タグキーは、より具体的なタグ値のカテゴリとして機能する一般的なラベルです。タグ値は、タグキーの記述子として機能します。

例えば、環境ごとに異なる自動化ルール (テスト用と本番用の自動化ルール) を作成する場合、それらのルールに Environment タグキーを割り当てます。関連するタグ値は、テストアカウントに関連付けられているルール用の Test でも、本番用アカウントと OU に関連するルール用の Prod でもかまいません。

AWS Security Hub リソースにタグを定義して割り当てる場合は、次のことに注意してください。

  • 各リソースには、最大 50 個のタグを設定できます。

  • リソースごとに、各タグ キーは一意である必要があり、タグ値は 1 つだけ持つことができます。

  • タグのキーと値では、大文字と小文字が区別されます。ベスト プラクティスとして、タグを大文字にする戦略を定義し、その戦略をリソース全体で一貫して実装することをお勧めします。

  • タグキーは最大 128 文字 (UTF-8) です。タグ値には最大 256 文字の UTF-8 文字を含めることができます。文字には、文字、数字、スペース、または次の記号を使用できます: _ 。 : / = + - @

  • aws: プレフィックスは、AWS が使用するために留保されています。定義したどのタグキーや値にも使用できません。さらに、このプレフィックスを使用するタグキーまたは値を変更または削除することはできません。このプレフィックスを使用するタグは、リソースあたりのタグ数のクォータ (50 個) にはカウントされません。

  • 割り当てたタグは、自分の AWS アカウントだけが使用でき、割り当てた AWS リージョンでしか使用できません。

  • Security Hub を使用してリソースにタグを割り当てると、タグは該当する AWS リージョンの Security Hub に直接保存されているリソースにのみ適用されます。これは、Security Hub が他の AWS のサービスで作成、使用、管理する関連サポートリソースには適用されません。例えば、Amazon Simple Storage Service (Amazon S3) に関連する検出結果を更新する自動化ルールにタグを割り当てた場合、タグは指定されたリージョンの Security Hub 自動化ルールにのみ適用されます。S3 バケットには適用されません。関連するリソースにもタグを割り当てるには、リソースを格納する AWS Resource Groups または AWS のサービスを使用できます。例えば、S3 バケットの場合は Amazon S3 を使用します。関連するリソースにタグを割り当てると、Security Hub リソースのサポートリソースを特定しやすくなります。

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

重要

機密データやその他の重要なデータをタグに保存しないでください。タグは、AWS Billing and Cost Management を含む多くの AWS のサービス からアクセスできます。それらは機密データに使用することを目的としていません。

Security Hub リソースのタグを追加および管理するには、Security Hub コンソール、Security Hub API、または AWS Resource Groups Tagging API を使用します。Security Hub を使用すると、リソースの作成時にタグをリソースに追加できます。また、既存のリソースごとにタグを追加、管理することもできます。リソースグループを使用すると、Security Hub を含む複数の AWS のサービスにまたがる複数の既存リソースに対し、タグを一括で追加、管理できます。

その他のタグ付けに関するヒント、ベストプラクティスについては、「Tagging AWS Resources User Guide」の「Tagging your AWS resources」を参照してください。

IAMポリシーでタグを使用する

リソースのタグ付けを開始した後、タグベースのリソースレベルのアクセス許可を AWS Identity and Access Management (IAM) ポリシーで定義できます。この方法でタグを使用すると、AWS アカウント 内のどのユーザーとロールがリソースの作成とタグ付けの権限を持つか、どのユーザーとロールがより一般的にタグの追加、編集、削除の権限を持つかを詳細に制御できます。タグに基づいてアクセスを制御するには、IAM ポリシーの条件の要素タグ関連の条件キーを使用します。

例えば、リソースの Owner タグの値がユーザー名となっている場合、すべての AWS Security Hub リソースに対して、ユーザーにフルアクセスを許可する IAM ポリシーを作成できます。

{ "Version":"2012-10-17", "Statement": [ { "Sid": "ModifyResourceIfOwner", "Effect": "Allow", "Action": "securityhub:*", "Resource": "*", "Condition": { "StringEqualsIgnoreCase": {"aws:ResourceTag/Owner": "${aws:username}"} } } ] }

タグをベースにしてリソースレベルでアクセス許可を定義した場合、そのアクセス許可は即座に反映されます。つまり、リソースが作成されるとすぐにリソースの安全性が増し、新しいリソースにタグの使用をすぐに強制できるようになります。リソースレベルのアクセス許可を使用して、新しいリソースと既存のリソースに、どのタグキーと値を関連付けるかを制御することもできます。詳細については、IAM ユーザーガイドタグを使用したAWSリソースへのアクセスのコントロールを参照してください。

AWS Security Hub リソースへのタグの追加

ここの AWS Security Hub リソースにタグを追加するには、Security Hub コンソールまたは Security Hub API を使用します。コンソールは Hub リソースへのタグの追加をサポートしていません。

複数の Security Hub リソースに同時にタグを追加するには、AWS Resource Groups Tagging API のタグ付けオペレーションを使用します。

重要

リソースにタグを追加すると、リソースへのアクセスに影響を与える可能性があります。リソースにタグを追加する前に、タグを使用してリソースへのアクセスを管理する可能性のある AWS Identity and Access Management (IAM) ポリシーを必ず確認してください。

Console

リソースにタグを追加

自動化ルールまたは設定ポリシーを作成すると、Security Hub コンソールにタグを追加するオプションが表示されます。タグキーとタグ値はタグセクションで指定できます。

Security Hub API & AWS CLI

リソースにタグを追加

リソースを作成して 1 つ以上のタグをプログラムで追加するには、作成するリソースのタイプに適した操作を使用します。

  • 設定ポリシーを作成して 1 つまたは複数のタグを追加するには、CreateConfigurationPolicy API を呼び出すか、AWS CLI を使用している場合は create-configuration-policy コマンドを実行します。

  • 自動化ルールを作成して 1 つ以上のタグを追加するには、CreateAutomationRule API を呼び出すか、AWS CLI を使用している場合は create-automation-rule コマンドを実行します。

  • Security Hub を有効にして Hub リソースに 1 つ以上のタグを追加するには、EnableSecurityHub API を呼び出すか、AWS Command Line Interface (AWS CLI) を使用している場合は enable-security-hub コマンドを実行します。

リクエストでは、tags パラメータを使用して、リソースに追加する各タグのタグキーとオプションのタグ値を指定します。tags パラメータは、オブジェクトの配列を指定します。各オブジェクトはタグキーとそれに関連するタグ値を指定します。

既存のリソースに 1 つ以上のタグを追加するには、Security Hub API の TagResource オペレーションを使用するか、AWS CLIを使用している場合は tag-resource コマンドを実行します。リクエストでは、タグを追加するリソースの Amazon リソースネーム (ARN) を指定します。tags パラメータを使用して、追加する各タグのタグキー (key) とオプションのタグ値 (value) を指定します。tags パラメータは、オブジェクトの配列、各タグキーに 1 つのオブジェクト、および関連するタグ値を指定します。

例えば、次の AWS CLI コマンドは、タグ値が ProdEnvironment タグキーを指定した設定ポリシーに追加します。この例は Linux、macOS、または Unix 用にフォーマットされており、読みやすさを向上させるためにバックスラッシュ (\) の行継続文字を使用しています。

CLI コマンドの例:

$ aws securityhub tag-resource \ --resource-arn arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \ --tags key=Environment,value=Prod

実行する条件は以下のとおりです。

  • resource-arn ではタグを追加する設定ポリシーの ARN を指定します。

  • Environment はルールに追加するタグのタグキーです。

  • Prod は指定されたタグキー (Environment) のタグ値です。

次の例では、コマンドは設定ポリシーに複数のタグを追加します。

$ aws securityhub tag-resource \ --resource-arn arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \ --tags key=Environment,value=Prod key=CostCenter,value=12345 key=Owner,value=jane-doe

tags配列内の各オブジェクトには、keyvalueとの引数の両方が必要です。ただし、value引数の値は空の文字列とすることができます。タグ値をタグキーに関連付けない場合、value引数の値を指定しないでください。例えば、次のコマンドは、関連するタグ値を含まない Owner タグキーを追加します。

$ aws securityhub tag-resource \ --resource-arn arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \ --tags key=Owner,value=

タグ付けオペレーションが成功すると、Security Hub は空の HTTP 200 レスポンスを返します。それ以外の場合、Security Hub は HTTP 4xx またはオペレーションが失敗した理由を示す 500 レスポンスを返します。

AWS Security Hub リソースのタグを確認する

Security Hub コンソールまたは Security Hub API を使用して、Security Hub 自動化ルールまたは設定ポリシーのタグ (タグキーとタグ値の両方) を確認できます。コンソールは Hub リソースのタグの確認をサポートしていません。

複数の Security Hub リソースのタグを同時に確認するには、AWS Resource Groups Tagging API のタグ付けオペレーションを使用します。

Console
リソースのタグを確認するには
  1. Security Hub 管理者の認証情報を使用して、https://console.aws.amazon.com/securityhub/ で AWS Security Hub コンソールを開きます。

  2. タグを追加するリソースのタイプに応じて、次のいずれかを実行します。

    • 自動化ルールのタグを確認するには、ナビゲーションペインで [自動化] を選択します。次に、自動化ルールを選択します。

    • 設定ポリシーのタグを確認するには、ナビゲーションペインで [設定] を選択します。次に、[ポリシー] タブで設定ポリシーの横にあるオプションを選択します。サイドパネルが開き、ポリシーに割り当てられたタグの数が表示されます。[タグ] ヘッダーを展開すると、タグキーとタグ値が表示されます。

Tags セクションには、現在リソースに割り当てられているすべてのタグが一覧表示されます。

Security Hub API & AWS CLI

リソースのタグを確認する

既存のリソースのタグを取得して確認するには、ListTagsForResource API を呼び出します。リクエストでは、resourceArn パラメータを使用してリソースの Amazon リソースネーム (ARN) を指定します。

AWS CLI を使用している場合は、list-tags-for-resourceコマンドを実行し、resource-arn パラメータを使用してリソースの ARN を指定します。例:

$ aws securityhub list-tags-for-resource --resource-arn arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

操作が成功すると、Security Hub は tags 配列を返します。配列内の各オブジェクトは、現在リソースに割り当てられているタグ (タグキーとタグ値の両方) を指定します。例:

{ "tags": [ { "key": "Environment", "value": "Prod" }, { "key": "CostCenter", "value": "12345" }, { "key": "Owner", "value": "" } ] }

ここでEnvironmentCostCenterOwnerは、リソースに割り当てられるタグキーです。 Prodは、Environmentタグキーに関連付けられているタグ値です。 12345は、CostCenterタグキーに関連付けられているタグ値です。Ownerタグキーには、関連するタグ値はありません。

タグの付いたすべての Security Hub リソースと、それらのリソースのそれぞれに割り当てられたすべてのタグのリストを取得するには、AWS Resource Groups Tagging API の GetResources オペレーションを使用します。リクエストでは、ResourceTypeFilters パラメータの値を securityhub に設定します。AWS CLI を使用してこれを行うには、get-resourcesコマンドを実行し、resource-type-filters パラメータの値を securityhub に設定します。例:

$ aws resourcegroupstaggingapi get-resources -\-resource-type-filters "securityhub"

オペレーションが成功すると、Resource Groups は ResourceTagMappingList 配列を返します。この配列には、タグが付いている Security Hub リソースごとに 1 つのオブジェクトが含まれます。各オブジェクトで Security Hub リソースの ARN と、リソースに割り当てられるタグキーと値を指定します。

AWS Security Hub リソースのタグを編集する

AWS Security Hub リソースのタグ (タグキーまたはタグ値) を編集するには、Security Hub API を使用します。現在、Security Hub コンソールはタグ編集をサポートしていません。

複数の Security Hub リソースのタグを同時に編集するには、AWS Resource Groups Tagging API のタグ付けオペレーションを使用します。

重要

リソースのタグを編集すると、リソースへのアクセスに影響する可能性があります。タグの名前 ( キー ) や値を編集する前に、タグを使用してリソースへのアクセスを制御する可能性のある AWS Identity and Access Management IAM ポリシーがあれば、必ず確認してください。

Security Hub API & AWS CLI

リソースのタグを編集する

リソースのタグをプログラムで編集すると、既存のタグが新しい値で上書きされます。したがって、タグを編集する最適な方法は、タグキーまたはタグ値を編集するのか、またはその両方を編集するのかによって異なります。タグキーを編集するには、現在のタグを削除して新しいタグを追加します

タグキーに関連付けられているタグ値のみを編集または削除するには、Security Hub API の TagResource オペレーションを使用して既存の値を上書きします。AWS CLI を使用している場合は、tag-resource コマンドを実行します。リクエストでは、タグ値を編集または削除するリソースの Amazon リソースネーム (ARN) を指定します。

タグ値を編集するには、tags パラメータを使用して、タグ値を変更したいタグキーを指定します。キーには新しいタグ値も指定する必要があります。例えば、次の AWS CLI コマンドは、特定の自動化ルールに割り当てられている Environment タグキーのタグ値を Prod から Test に変更します。この例は Linux、macOS、または Unix 用にフォーマットされており、読みやすさを向上させるためにバックスラッシュ (\) の行継続文字を使用しています。

$ aws securityhub tag-resource \ --resource-arn arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \ --tags key=Environment,value=Test

実行する条件は以下のとおりです。

  • resource-arn では設定ポリシーの ARN を指定します。

  • Environmentは、変更するタグ値に関連付けられているタグキーです。

  • Testは、指定したタグキー (Environment) に使用する新しいタグ値です。

タグキーからタグ値を削除するには、tagsパラメーターのキーのvalue引数の値を指定しないでください。例:

$ aws securityhub tag-resource \ --resource-arn arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \ --tags key=Owner,value=

オペレーションが成功すると、Security Hub は空の HTTP 200 レスポンスを返します。それ以外の場合、Security Hub は HTTP 4xx またはオペレーションが失敗した理由を示す 500 レスポンスを返します。

AWS Security Hub リソースからのタグの削除

AWS Security Hub リソースからタグを削除するには、Security Hub API を使用します。現在、Security Hub コンソールはタグの削除をサポートしていません。

複数の Security Hub リソースからタグを同時に削除するには、AWS Resource Groups Tagging API のタグ付けオペレーションを使用します。

重要

リソースからタグを削除すると、リソースへのアクセスに影響を与える可能性があります。タグを削除する前に、タグを使用してリソースへのアクセスを管理する可能性のある AWS Identity and Access Management (IAM) ポリシーを必ず確認してください。

Security Hub API & AWS CLI

リソースからタグを削除する

リソースから 1 つ以上のタグをプログラムで削除するには、Security Hub API の UntagResource オペレーションを使用します。リクエストで、resourceArnパラメーターを使用して、タグを削除するリソースの Amazon リソースネーム (ARN) を指定します。tagKeysパラメータを使用して、削除するタグのタグキーを指定します。複数のタグを削除するには、削除する各タグのtagKeysパラメーターと引数をアンパサンド (&) で区切って追加します (例:tagKeys=key1&tagKeys=key2)。リソースから特定のタグ値 (タグキーではない) のみを削除するには、タグを削除する代わりにタグを編集します。

AWS CLI を使用している場合は、untag-resource コマンドを実行して 1 つ以上のタグをリソースから削除します。resource-arn パラメータには、タグを削除するリソースの ARN を指定します。tag-keysパラメータを使用して、削除するタグのタグキーを指定します。例えば、次のコマンドは、指定した設定ポリシーから Environment タグ (タグキーとタグ値の両方) を削除します。

$ aws securityhub untag-resource \ --resource-arn arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \ --tag-keys Environment

ここで resource-arn ではタグを削除する設定ポリシーの ARN を指定し、Environment は削除するタグのタグキーです。

リソースから複数のタグを削除するには、追加の各タグ キーを tag-keys パラメーターの引数として追加します。例:

$ aws securityhub untag-resource \ --resource-arn arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \ --tag-keys Environment Owner

オペレーションが成功すると、Security Hub は空の HTTP 200 レスポンスを返します。それ以外の場合、Security Hub は HTTP 4xx またはオペレーションが失敗した理由を示す 500 レスポンスを返します。