AWS Shield のアクション、リソース、および条件キー
AWS Shield (サービスプレフィックス: shield) では、IAM 許可ポリシーで使用できるように、以下のサービス固有のリソースやアクション、条件コンテキストキーが用意されています。
参照:
-
このサービスを設定する方法について説明します。
-
このサービスで使用可能な API オペレーションのリストを表示します。
-
IAM アクセス許可ポリシーを使用して、このサービスとそのリソースを保護する方法を学びます。
AWS Shield で定義されるアクション
IAM ポリシーステートメントの Action エレメントでは、以下のアクションを指定できます。ポリシーを使用して、AWS でオペレーションを実行するアクセス許可を付与します。ポリシーでアクションを使用する場合は、通常、同じ名前の API オペレーションまたは CLI コマンドへのアクセスを許可または拒否します。ただし、場合によっては、1 つのアクションによって複数のオペレーションへのアクセスが制御されます。あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。
アクションテーブルの [アクセスレベル] 列では、アクションの指定方法 (リスト、読み取り、アクセス許可管理、タグ付け) について説明します。このように分類することで、ポリシーで使用する際にアクションで付与するアクセスレベルを理解しやすくなります。アクセスレベルの詳細については、「ポリシー概要内のアクセスレベル」を参照してください。
[アクション] テーブルの [リソースタイプ] 列は、各アクションがリソースレベルの許可をサポートしているかどうかを示します。この列に値がない場合は、ポリシーステートメントの Resource 要素で、ポリシーが適用されるすべてのリソース (「*」) を指定する必要があります。列にリソースタイプが含まれる場合、そのアクションを含むステートメントでそのタイプの ARN を指定できます。アクションで 1 つ以上のリソースが必須となっている場合、呼び出し元には、それらのリソースを伴うアクションを使用するための許可が付与されている必要があります。必須リソースは、アスタリスク (*) でテーブルに示されています。IAM ポリシーの Resource 要素でリソースアクセスを制限する場合は、必要なリソースタイプごとに ARN またはパターンを含める必要があります。一部のアクションでは、複数のリソースタイプがサポートされています。リソースタイプがオプション (必須として示されていない) の場合、オプションのリソースタイプのいずれかを使用することを選択できます。
[アクション] テーブルの [条件キー] 列には、ポリシーステートメントの Condition 要素で指定できるキーが含まれます。サービスのリソースに関連付けられている条件キーの詳細については、[リソースタイプ] テーブルの [条件キー] 列を参照してください。
Actions テーブルの [依存アクション] 列には、アクションを正常に呼び出すために必要な追加のアクセス許可が表示されます。これらのアクセス許可は、アクション自体のアクセス許可に加えて必要になる場合があります。アクションが依存アクションを指定すると、それらの依存関係は、テーブルにリストされている最初のリソースだけでなく、そのアクションに定義された追加のリソースに適用される場合があります。
注記
リソース条件キーは、リソースタイプテーブルに一覧表示されています。アクションに適用されるリソースタイプへのリンクは、[アクション] テーブルの [リソースタイプ (* 必須)] 列にあります。[リソースタイプ] テーブルのリソースタイプには、[アクション] テーブルのアクションに適用されるリソース条件キーである、[条件キー] 列が含まれています。
以下の表の列の詳細については、「アクションテーブル」を参照してください。
| アクション | 説明 | アクセスレベル | リソースタイプ (* 必須) | 条件キー | 依存アクション |
|---|---|---|---|---|---|
| AssociateDRTLogBucket | DDoS レスポンスチームが、フローログを含む指定された Amazon S3 バケットにアクセスすることを承認する許可を付与。 | Write |
s3:GetBucketPolicy s3:PutBucketPolicy |
||
| AssociateDRTRole | 指定されたロールを使用している DDoS レスポンスチームに AWS アカウント にアクセスして潜在的な攻撃中に DDoS 攻撃の軽減を支援することを承認する許可を付与する | Write |
iam:GetRole iam:ListAttachedRolePolicies iam:PassRole |
||
| AssociateHealthCheck | リソースの Shield アドバンスト保護にヘルスベースの検出を追加する許可を付与。 | Write |
route53:GetHealthCheck |
||
| AssociateProactiveEngagementDetails | プロアクティブな関与を初期化し、DDoS レスポンスチーム (DRT) が使用する連絡先の一覧を設定する許可を付与。 | Write | |||
| CreateProtection | 指定されたリソース ARN の DDoS 保護サービスをアクティブ化する許可を付与。 | Write | |||
| CreateProtectionGroup | 保護されたリソースのグループを作成するアクセス許可を付与して、それらを集合として処理できるようにします。 | Write | |||
| CreateSubscription | サブスクリプションをアクティブ化するためのアクセス許可を付与します。 | Write | |||
| DeleteProtection | 既存の保護を削除する許可を付与。 | Write | |||
| DeleteProtectionGroup | 指定された保護グループを削除する許可を付与。 | Write | |||
| DeleteSubscription | サブスクリプションを無効にする許可を付与。 | Write | |||
| DescribeAttack | 攻撃の詳細を取得する許可を付与。 | 読み取り | |||
| DescribeAttackContributors [アクセス許可のみ] | 特定の DDoS 攻撃の関与者に関する詳細情報を取得するアクセス許可を付与 | 読み取り | |||
| DescribeAttackStatistics | AWS Shield が昨年検出した攻撃の数と種類に関する情報を記述する許可を付与する | Read | |||
| DescribeDRTAccess | 攻撃の軽減を支援しているときに AWS アカウント にアクセスするために DDoS レスポンスチームが使用する Amazon S3 ログバケットの現在のロールとリストを説明する許可を付与する | Read | |||
| DescribeEmergencyContactSettings | 疑わしい攻撃中に ユーザーに連絡するために DRT が使用できる E メールアドレスをリストする許可を付与。 | Read | |||
| DescribeProtection | 保護の詳細を取得する許可を付与。 | Read | |||
| DescribeProtectionGroup | 指定された保護グループの仕様を説明する許可を付与。 | Read | |||
| DescribeSubscription | 開始時刻など、サブスクリプションの詳細を取得するためのアクセス許可を付与します。 | 読み取り | |||
| DisableApplicationLayerAutomaticResponse | リソースの Shield Advanced 保護のアプリケーションレイヤー自動応答を無効にする許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| DisableProactiveEngagement | DDoS レスポンスチーム (DRT) から承認を削除するアクセス許可を付与し、エスカレーションについて連絡先に通知します。 | Write | |||
| DisassociateDRTLogBucket | ユーザーのフローログを含む指定された Amazon S3 バケットへの DDoS レスポンスチームのアクセスを削除する許可を付与。 | Write |
s3:DeleteBucketPolicy s3:GetBucketPolicy s3:PutBucketPolicy |
||
| DisassociateDRTRole | DDoS レスポンスチームの AWS アカウント へのアクセスを削除する許可を付与する | Write | |||
| DisassociateHealthCheck | リソースの Shield アドバンスト保護からヘルスベースの検出を削除する許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| EnableApplicationLayerAutomaticResponse | リソースの Shield Advanced 保護のアプリケーションレイヤー自動応答を有効にする許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 |
apprunner:DescribeWebAclForService cloudfront:GetDistribution cognito-idp:GetWebACLForResource ec2:GetVerifiedAccessInstanceWebAcl iam:CreateServiceLinkedRole iam:GetRole wafv2:GetWebACL wafv2:GetWebACLForResource |
||
| EnableProactiveEngagement | DDoS レスポンスチーム (DRT) に E メールと電話を使用して、エスカレーションについて連絡先への通知を許可する許可を付与。 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| GetGlobalThreatData [アクセス許可のみ] | AWS Shield の脅威モニタリングシステムからグローバルな脅威インテリジェンスデータと傾向を取得するアクセス許可を付与 | 読み取り | |||
| GetSubscriptionState | サブスクリプションの状態を取得するためのアクセス許可を付与します。 | Read | |||
| ListAttacks | 既存のすべての攻撃を一覧表示する許可を付与。 | リスト | |||
| ListMitigations [アクセス許可のみ] | DDoS 攻撃中に適用された緩和アクションのリストを取得するアクセス許可を付与 | リスト | |||
| ListProtectionGroups | アカウントの保護グループを取得する許可を付与。 | リスト | |||
| ListProtections | 既存の保護をすべて一覧表示する許可を付与。 | リスト | |||
| ListResourcesInProtectionGroup | 保護グループに含まれるリソースを取得するためのアクセス許可を付与します。 | リスト | |||
| ListTagsForResource | AWS Shield で指定された Amazon リソースネーム (ARN) の AWS タグに関する情報を取得する許可を付与する | Read | |||
| TagResource | AWS Shield でリソースのタグを追加または更新する許可を付与する | タグ付け | |||
| UntagResource | AWS Shield のリソースからタグを削除する許可を付与する | タグ付け | |||
| UpdateApplicationLayerAutomaticResponse | リソースの Shield Advanced 保護のアプリケーションレイヤー自動応答を更新する許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 |
apprunner:DescribeWebAclForService cognito-idp:GetWebACLForResource ec2:GetVerifiedAccessInstanceWebAcl wafv2:GetWebACL wafv2:GetWebACLForResource |
||
| UpdateEmergencyContactSettings | 疑わしい攻撃中に ユーザーに連絡するために DRT が使用できる E メールアドレスのリストの詳細を更新する許可を付与。 | Write | |||
| UpdateProtectionGroup | 既存の保護グループを更新する許可を付与。 | Write | |||
| UpdateSubscription | 既存のサブスクリプションの詳細を更新する許可を付与。 | Write |
AWS Shield で定義されるリソースタイプ
以下のリソースタイプは、このサービスによって定義され、IAM アクセス許可ポリシーステートメントの Resource エレメントで使用できます。アクションテーブルの各アクションは、そのアクションで指定できるリソースタイプを示しています。リソースタイプは、ポリシーに含めることができる条件キーを定義することもできます。これらのキーは、[リソースタイプ] テーブルの最後の列に表示されます。以下の表の列の詳細については、「リソースタイプテーブル」を参照してください。
| リソースタイプ | ARN | 条件キー |
|---|---|---|
| attack |
arn:${Partition}:shield::${Account}:attack/${Id}
|
|
| protection |
arn:${Partition}:shield::${Account}:protection/${Id}
|
|
| protection-group |
arn:${Partition}:shield::${Account}:protection-group/${Id}
|
AWS Shield の条件キー
AWS Shield では、IAM ポリシーの Condition 要素で使用できる以下の条件キーを定義します。これらのキーを使用して、ポリシーステートメントが適用される条件をさらに絞り込むことができます。以下の表の列の詳細については、「条件キーテーブル」を参照してください。
すべてのサービスで使用できるグローバル条件キーを確認するには、「AWSグローバル条件コンテキストキー」を参照してください。
| 条件キー | 説明 | タイプ |
|---|---|---|
| aws:RequestTag/${TagKey} | リクエスト内のタグキーと値のペアのプレゼンスに基づいてアクションをフィルタリングします | 文字列 |
| aws:ResourceTag/${TagKey} | リソースにアタッチされているタグキーと値のペアに基づいてアクションをフィルタリングします | 文字列 |
| aws:TagKeys | リクエスト内のタグキーのプレゼンスに基づいてアクションをフィルタリングします | ArrayOfString |