が IAM と AWS Health 連携する方法 - AWS Health

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

が IAM と AWS Health 連携する方法

IAM を使用して へのアクセスを管理する前に AWS Health、 で使用できる IAM 機能を理解しておく必要があります AWS Health。 AWS Health およびその他の AWS のサービスが IAM と連携する方法の概要を把握するには、「IAM ユーザーガイド」のAWS 「IAM と連携する のサービス」を参照してください。

AWS Health アイデンティティベースのポリシー

IAM アイデンティティベースのポリシーでは、許可または拒否されたアクションとリソースを指定でき、さらにアクションが許可または拒否された条件を指定できます。 AWS Health は、特定のアクション、リソース、および条件キーをサポートします。JSON ポリシーで使用するすべての要素については、「IAM ユーザーガイド」の「IAM JSON ポリシー要素のリファレンス」を参照してください。

アクション

管理者は AWS JSON ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どのプリンシパルがどんなリソースにどんな条件アクションを実行できるかということです。

JSON ポリシーのAction要素には、ポリシー内のアクセスを許可または拒否するために使用できるアクションが記述されます。ポリシーアクションの名前は通常、関連付けられた AWS API オペレーションと同じです。一致する API オペレーションのない権限のみのアクションなど、いくつかの例外があります。また、ポリシーに複数アクションが必要なオペレーションもあります。これらの追加アクションは、 依存アクション と呼ばれます。

このアクションは、関連付けられたオペレーションを実行するための権限を付与するポリシーで使用されます。

のポリシーアクションは、アクションの前にプレフィックス AWS Health を使用しますhealth:。例えば、DescribeEvent詳細 API オペレーションで指定されたイベントに関する詳細情報を表示するアクセス許可をユーザーに付与するには、ポリシーに heath:DescribeEventDetailsアクションを含めます。

ポリシーステートメントには、 Actionまたは NotAction element. AWS Health defines its own set of actions that describe tasks that you can perform with this service. を含める必要があります。

単一のステートメントに複数の アクションを指定するには、次のようにコンマで区切ります。

"Action": [ "health:action1", "health:action2"

ワイルドカード *を使用して複数のアクションを指定することができます。例えば、Describe という単語で始まるすべてのアクションを指定するには、次のアクションを含めます。

"Action": "health:Describe*"

AWS Health アクションのリストを確認するには、「IAM ユーザーガイド」の「 で定義されるアクション AWS Health」を参照してください。

リソース

管理者は AWS JSON ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どのプリンシパルがどのリソースにどのような条件アクションを実行できるかということです。

Resource JSON ポリシー要素は、アクションが適用されるオブジェクトを指定します。ステートメントには、Resource または NotResource要素を含める必要があります。ベストプラクティスとして、Amazon リソースネーム (ARN) を使用してリソースを指定します。これは、リソースレベルの権限と呼ばれる特定のリソースタイプをサポートするアクションに対して実行できます。

オペレーションのリスト化など、リソースレベルの権限をサポートしないアクションの場合は、ステートメントがすべてのリソースに適用されることを示すために、ワイルドカード (*) を使用します。

"Resource": "*"

AWS Health イベントには、次の Amazon リソースネーム (ARN) 形式があります。

arn:${Partition}:health:*::event/service/event-type-code/event-ID

たとえば、ステートメントで EC2_INSTANCE_RETIREMENT_SCHEDULED_ABC123-DEF456 イベントを指定するには、次の ARN を使用します。

"Resource": "arn:aws:health:*::event/EC2/EC2_INSTANCE_RETIREMENT_SCHEDULED/EC2_INSTANCE_RETIREMENT_SCHEDULED_ABC123-DEF456"

特定のアカウントに属する Amazon EC2 のすべての AWS Health イベントを指定するには、ワイルドカード (*) を使用します。

"Resource": "arn:aws:health:*::event/EC2/*/*"

ARN の形式の詳細については、「Amazon リソースネーム (ARNs AWS 「サービス名前空間」を参照してください。

一部の AWS Health アクションは、特定のリソースで実行できません。このような場合は、ワイルドカード *を使用する必要があります。

"Resource": "*"

AWS Health API オペレーションには複数のリソースが含まれる場合があります。例えば、 DescribeEventsオペレーションは、指定されたフィルター条件を満たすイベントに関する情報を返します。これは、IAM ユーザーがこのイベントを表示するためのアクセス許可を持っている必要があることを意味します。

複数リソースを単一ステートメントで指定するには、ARN をカンマで区切ります。

"Resource": [ "resource1", "resource2"

AWS Health は、ヘルスイベントと DescribeAffectedエンティティおよびDescribeEvent詳細 API オペレーションのリソースレベルのアクセス許可のみをサポートします。詳細については、「リソースおよびアクションに基づく条件」を参照してください。

AWS Health リソースタイプとその ARNs」の「 で定義されるリソース AWS Health」を参照してください。 どのアクションで各リソースの ARN を指定できるかについては、AWS Healthで定義されるアクションを参照してください。

条件キー

管理者は AWS JSON ポリシーを使用して、誰が何にアクセスできるかを指定できます。つまり、どのプリンシパルがどんなリソースにどんな条件アクションを実行できるかということです。

Condition 要素 (または Condition ブロック) を使用すると、ステートメントが有効な条件を指定できます。Condition 要素はオプションです。イコールや未満などの 条件演算子 を使用して条件式を作成することで、ポリシーの条件とリクエスト内の値を一致させることができます。

1 つのステートメントに複数の Condition 要素を指定するか、1 つの Condition 要素に複数のキーを指定すると、 AWS は AND 論理演算子を使用してそれらを評価します。1 つの条件キーに複数の値を指定すると、 は論理ORオペレーションを使用して条件 AWS を評価します。ステートメントの権限が付与される前にすべての条件が満たされる必要があります。

条件を指定する際にプレースホルダー変数も使用できます。例えば IAM ユーザーに、IAM ユーザー名がタグ付けされている場合のみリソースにアクセスできる権限を付与することができます。詳細については、『IAM ユーザーガイド』の「‭‬IAM ポリシーの要素: 変数およびタグ‭‬」を参照してください。

AWS は、グローバル条件キーとサービス固有の条件キーをサポートします。すべての AWS グローバル条件キーを確認するには、「IAM ユーザーガイド」のAWS 「 グローバル条件コンテキストキー」を参照してください。

AWS Health は独自の条件キーのセットを定義し、一部のグローバル条件キーの使用もサポートします。すべての AWS グローバル条件キーを確認するには、「IAM ユーザーガイドAWS 」の「グローバル条件コンテキストキー」を参照してください。

DescribeAffectedエンティティおよびDescribeEvent詳細 API オペレーションは、 health:eventTypeCodeおよび health:service条件キーをサポートします。

AWS Health 条件キーのリストを確認するには、「IAM ユーザーガイド」の「 の条件キー AWS Health」を参照してください。条件キーを使用できるアクションとリソースについては、「 で定義されるアクション AWS Health」を参照してください。

AWS Health アイデンティティベースのポリシーの例を表示するには、「」を参照してくださいAWS Health アイデンティティベースのポリシーの例

AWS Health リソースベースのポリシー

リソースベースのポリシーは、指定されたプリンシパルが AWS Health リソースに対して実行できるアクションと条件を指定する JSON ポリシードキュメントです。 は、ヘルスイベントのリソースベースのアクセス許可ポリシー AWS Health をサポートします。リソースベースのポリシーでは、リソースごとに他の アカウントに使用許可を付与することができます。リソースベースのポリシーを使用して、 AWS サービスが AWS Health イベントにアクセスすることを許可することもできます。

クロスアカウントアクセスを有効にするには、アカウント全体、または別のアカウントの IAM エンティティをリソースベースのポリシーのプリンシパルとして指定します。リソースベースのポリシーにクロスアカウントのプリンシパルを追加しても、信頼関係は半分しか確立されない点に注意してください。プリンシパルとリソースが異なる AWS アカウントにある場合は、プリンシパルエンティティにリソースへのアクセス許可も付与する必要があります。アクセス許可は、アイデンティティベースのポリシーをエンティティにアタッチすることで付与します。ただし、リソースベースのポリシーで、同じアカウントのプリンシパルへのアクセス権が付与されている場合は、ID ベースのポリシーをさらに付与する必要はありません。詳細については、IAM ユーザーガイドの「IAM ロールとリソースベースのポリシーとの相違点」を参照してください。

AWS Health はDescribeAffected、Entities および DescribeEventDetails API オペレーションのリソースベースのポリシーのみをサポートします。これらのアクションをポリシーで指定して、 AWS Health イベントに対してアクションを実行できるプリンシパルエンティティ (アカウント、ユーザー、ロール、フェデレーティッドユーザー) を定義できます。

AWS Health リソースベースのポリシーの例を表示するには、「」を参照してくださいリソースおよびアクションに基づく条件

AWS Health タグに基づく認可

AWS Health では、リソースのタグ付けやタグに基づいたアクセスの制御はサポートされていません。

AWS Health IAM ロール

IAM ロールは、特定のアクセス許可を持つ AWS アカウント内のエンティティです。

での一時的な認証情報の使用 AWS Health

一時的な認証情報を使用して、フェデレーションでサインインする、IAM ロールを引き受ける、またはクロスアカウントロールを引き受けることができます。一時的なセキュリティ認証情報を取得するには、 AssumeRoleGetFederationトークン などの AWS STS API オペレーションを呼び出します。

AWS Health では、一時的な認証情報の使用がサポートされています。

サービスリンクロール

サービスにリンクされたロールを使用すると、 AWS サービスは他の サービスのリソースにアクセスして、ユーザーに代わってアクションを実行できます。サービスリンクロールは IAM アカウント内に表示され、サービスによって所有されます。IAM 管理者は、サービスリンクロールの許可を表示できますが、編集することはできません。

AWS Health は、 と統合するためのサービスにリンクされたロールをサポートします AWS Organizations。サービスにリンクされたロールは、AWSServiceRoleForHealth_Organizations と呼ばれます。ロールにアタッチされるのは Health_OrganizationsServiceRolePolicy AWS managed ポリシーです。管理ポリシーでは AWS Health 、 AWS が組織内の他の AWS アカウントからのヘルスイベントにアクセスできるようにします。

EnableHealthServiceAccessForOrganization オペレーションを使用して、 アカウントにサービスにリンクされたロールを作成できます。ただし、この機能を無効にする場合は、まず DisableHealthServiceAccessForOrganizationオペレーションを呼び出す必要があります。その後、IAM コンソール、IAM API、または AWS Command Line Interface () を使用してロールを削除できますAWS CLI。詳細については、「 IAM ユーザーガイド」の「サービスにリンクされたロールの使用」を参照してください。

詳細については、「組織ビューでのアカウント全体の AWS Health イベントの集計」を参照してください。

サービスロール

この機能により、ユーザーに代わってサービスがサービスロールを引き受けることが許可されます。このロールにより、サービスがお客様に代わって他のサービスのリソースにアクセスし、アクションを完了することが許可されます。サービスロールは、IAM アカウントに表示され、アカウントによって所有されます。つまり、IAM 管理者は、このロールの権限を変更できます。ただし、それにより、サービスの機能が損なわれる場合があります。

AWS Health はサービスロールをサポートしていません。