翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS WAF V2 のアクション、リソース、および条件キー
AWS WAF V2 (サービスプレフィックス: wafv2) では、IAM アクセス許可ポリシーで使用できるように、以下のサービス固有のリソースやアクション、条件コンテキストキーが用意されています。
リファレンス:
-
このサービスを設定する方法について説明します。
-
このサービスで使用可能な API オペレーションのリストを表示します。
-
IAM アクセス許可ポリシーを使用して、このサービスとそのリソースを保護する方法を学びます。
AWS WAF V2 で定義されるアクション
IAM ポリシーステートメントの Action エレメントでは、以下のアクションを指定できます。ポリシーを使用して、 AWSでオペレーションを実行するアクセス許可を付与します。ポリシーでアクションを使用する場合は、通常、同じ名前の API オペレーションまたは CLI コマンドへのアクセスを許可または拒否します。ただし、場合によっては、1 つのアクションによって複数のオペレーションへのアクセスが制御されます。あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。
Actions テーブルのアクセスレベル列は、アクションの分類方法 (List、Read、Permissions Management、Tagging) を示しています。このように分類することで、ポリシーで使用する際にアクションで付与するアクセスレベルを理解しやすくなります。アクセスレベルの詳細については、ポリシー概要の「アクセスレベル」を参照してください。
[アクション] テーブルの [リソースタイプ] 列は、各アクションがリソースレベルの許可をサポートしているかどうかを示します。この列に値がない場合は、ポリシーステートメントの Resource 要素で、ポリシーが適用されるすべてのリソース (「*」) を指定する必要があります。列にリソースタイプが含まれる場合、そのアクションを含むステートメントでそのタイプの ARN を指定できます。アクションで 1 つ以上のリソースが必須となっている場合、呼び出し元には、それらのリソースを伴うアクションを使用するための許可が付与されている必要があります。必須リソースは、アスタリスク (*) でテーブルに示されています。IAM ポリシーの Resource 要素でリソースアクセスを制限する場合は、必要なリソースタイプごとに ARN またはパターンを含める必要があります。一部のアクションでは、複数のリソースタイプがサポートされています。リソースタイプがオプション (必須として示されていない) の場合、オプションのリソースタイプのいずれかを使用することを選択できます。
[アクション] テーブルの [条件キー] 列には、ポリシーステートメントの Condition 要素で指定できるキーが含まれます。サービスのリソースに関連付けられている条件キーの詳細については、[リソースタイプ] テーブルの [条件キー] 列を参照してください。
Actions テーブルの Dependent actions 列には、アクションを正常に呼び出すために必要な追加のアクセス許可が表示されます。これらのアクセス許可は、アクション自体のアクセス許可に加えて必要になる場合があります。アクションが依存アクションを指定すると、それらの依存関係は、テーブルにリストされている最初のリソースだけでなく、そのアクションに定義された追加のリソースに適用される場合があります。
注記
リソース条件キーは、リソースタイプテーブルに一覧表示されています。アクションに適用されるリソースタイプへのリンクは、[アクション] テーブルの [リソースタイプ (* 必須)] 列にあります。[リソースタイプ] テーブルのリソースタイプには、[アクション] テーブルのアクションに適用されるリソース条件キーである、[条件キー] 列が含まれています。
以下の表の列の詳細については、「アクションテーブル」を参照してください。
| アクション | 説明 | アクセスレベル | リソースタイプ (* 必須) | 条件キー | 依存アクション |
|---|---|---|---|---|---|
| AssociateWebACL | WebACL をリソースに関連付けるアクセス許可を付与 | Write |
amplify:AssociateWebACL apigateway:SetWebACL apprunner:AssociateWebAcl appsync:SetWebACL cognito-idp:AssociateWebACL ec2:AssociateVerifiedAccessInstanceWebAcl elasticloadbalancing:SetWebAcl wafv2:GetPermissionPolicy wafv2:PutPermissionPolicy |
||
| CheckCapacity | 指定したスコープとルールのセットについて、ウェブ ACL キャパシティーユニット (WCU) 要件を計算する許可を付与 | 読み取り | |||
| CreateAPIKey | JavaScript クライアントアプリケーションで CAPTCHA API での統合に使用する、API キーを作成する許可を付与 | 書き込み | |||
| CreateIPSet | IPSet を作成する許可を付与 | Write |
wafv2:TagResource |
||
| CreateRegexPatternSet | RegexPatternSet を作成する許可を付与。 | Write |
wafv2:TagResource |
||
| CreateRuleGroup | RuleGroup を作成する許可を付与。 | Write |
wafv2:TagResource |
||
| CreateWebACL | WebACL を作成する許可を付与 | 書き込み |
wafv2:TagResource |
||
| DeleteAPIKey | API キーを削除する許可を付与 | 書き込み | |||
| DeleteFirewallManagerRuleGroups | Firewall Manager によって管理されなくなった場合に WebACL から FirewallManagedRulesGroups を削除する許可を付与 | Write | |||
| DeleteIPSet | IPSet を削除する許可を付与。 | Write | |||
| DeleteLoggingConfiguration | WebACL から LoggingConfiguration を削除する許可を付与 | Write | |||
| DeletePermissionPolicy | RuleGroup の PermissionPolicy を削除する許可を付与。 | Permissions management | |||
| DeleteRegexPatternSet | RegexPatternSet を削除する許可を付与。 | Write | |||
| DeleteRuleGroup | RuleGroup を削除する許可を付与 | Write | |||
| DeleteWebACL | WebACL を削除する許可を付与 | 書き込み | |||
| DescribeAllManagedProducts | マネージドルールグループの製品情報を取得する許可を付与 | 読み取り | |||
| DescribeManagedProductsByVendor | 指定されたベンダーによるマネージドルールグループの製品情報を取得する許可を付与 | 読み取り | |||
| DescribeManagedRuleGroup | マネージドルールグループの高レベル情報を取得する許可を付与 | 読み取り | |||
| DisassociateFirewallManager [許可のみ] | WebACL から Firewall Manager の関連付けを解除する許可を付与 | 書き込み | |||
| DisassociateWebACL | アプリケーションリソースから WebACL の関連付けを解除する許可を付与 | 書き込み |
amplify:DisassociateWebACL apigateway:SetWebACL apprunner:DisassociateWebAcl appsync:SetWebACL cognito-idp:DisassociateWebACL ec2:DisassociateVerifiedAccessInstanceWebAcl elasticloadbalancing:SetWebAcl wafv2:PutPermissionPolicy |
||
| GenerateMobileSdkReleaseUrl | モバイル SDK の指定したリリースの署名済みダウンロード URL を生成するアクセス許可を付与 | 読み取り | |||
| GetDecryptedAPIKey | API キーを復号化された形式で返す許可を付与します。これは、キーのために定義したトークンドメインを確認するためにします。 | 読み取り | |||
| GetIPSet | IPSet の詳細を取得するアクセス許可を付与 | Read | |||
| GetLoggingConfiguration | WebACL の LoggingConfiguration を取得する許可を付与。 | 読み取り | |||
| GetManagedRuleSet | ManagedRuleGroup の詳細を取得する許可を付与 | 読み取り | |||
| GetMobileSdkRelease | リリースノートやタグなど、指定したモバイル SDK リリースの情報を取得するアクセス許可を付与 | 読み取り | |||
| GetPermissionPolicy | RuleGroup の PermissionPolicy を取得する許可を付与 | Read | |||
| GetRateBasedStatementManagedKeys | レートベースのルールによって現在ブロックされているキーを取得する許可を付与 | Read | |||
| GetRegexPatternSet | RegexPatternSet の詳細を取得する許可を付与 | Read | |||
| GetRuleGroup | RuleGroup の詳細を取得する許可を付与 | Read | |||
| GetSampledRequests | ウェブリクエストのサンプリングに関する詳細情報を取得する許可を付与 | Read | |||
| GetWebACL | WebACL の詳細を取得する許可を付与 | Read | |||
| GetWebACLForResource | リソースに関連付けられている WebACL を取得する許可を付与 | 読み取り |
amplify:GetWebACLForResource apprunner:DescribeWebAclForService cognito-idp:GetWebACLForResource ec2:GetVerifiedAccessInstanceWebAcl wafv2:GetWebACL |
||
| ListAPIKeys | 指定された範囲のために定義した API キーのリストを取得する許可を付与 | リスト | |||
| ListAvailableManagedRuleGroupVersions | 使用可能なマネージドルールグループのバージョンを取得する許可を付与 | リスト | |||
| ListAvailableManagedRuleGroups | 使用可能なマネージドルールグループの配列を取得する許可を付与 | リスト | |||
| ListIPSets | 管理する IP セットの IPSetSummary オブジェクトの配列を取得する許可を付与 | リスト | |||
| ListLoggingConfigurations | LoggingConfiguration オブジェクトの配列を取得する許可を付与 | リスト | |||
| ListManagedRuleSets | ManagedRuleSetオブジェクトの配列を取得するアクセス許可を付与 | リスト | |||
| ListMobileSdkReleases | モバイル SDK や指定したデバイスプラットフォームのリリース済みリストを取得するアクセス許可を付与 | リスト | |||
| ListRegexPatternSets | 管理する正規表現パターンセットの RegexPatternSetSummary オブジェクトの配列を取得する許可を付与 | リスト | |||
| ListResourcesForWebACL | ウェブ ACL に関連付けられているリソースの Amazon リソースネーム (ARN) の配列を取得する許可を付与。 | リスト |
amplify:ListResourcesForWebACL apprunner:ListAssociatedServicesForWebAcl cognito-idp:ListResourcesForWebACL ec2:DescribeVerifiedAccessInstanceWebAclAssociations |
||
| ListRuleGroups | 管理するルールグループの RuleGroupSummary オブジェクトの配列を取得する許可を付与 | リスト | |||
| ListTagsForResource | リソースのタグを一覧表示する許可を付与 | Read | |||
| ListWebACLs | 管理するウェブ ACL の WebACLSummary オブジェクトの配列を取得する許可を付与。 | リスト | |||
| PutFirewallManagerRuleGroups [許可のみ] | WebACL に FirewallManagedRulesGroups を作成する許可を付与 | Write | |||
| PutLoggingConfiguration | LoggingConfiguration を有効にしてウェブ ACL のロギングを開始する許可を付与 | 書き込み |
iam:CreateServiceLinkedRole |
||
| PutManagedRuleSetVersions | ManagedRuleSet の新しいバージョンを作成または既存のバージョンを更新するアクセス許可を付与 | 書き込み | |||
| PutPermissionPolicy | アカウント間でルールグループを共有するために使用する IAM ポリシーをリソースにアタッチするアクセス許可を付与 | 権限の管理 | |||
| TagResource | タグを AWS リソースに関連付けるアクセス許可を付与します | Tagging | |||
| UntagResource | AWS リソースからタグの関連付けを解除するアクセス許可を付与します | Tagging | |||
| UpdateIPSet | IPSet を更新する許可を付与 | 書き込み | |||
| UpdateManagedRuleSetVersionExpiryDate | ManagedRuleSet 内のバージョンの有効期限を更新するアクセス許可を付与 | 書き込み | |||
| UpdateRegexPatternSet | RegexPatternSet を更新する許可を付与 | Write | |||
| UpdateRuleGroup | RuleGroup を更新する許可を付与 | Write | |||
| UpdateWebACL | WebACL を更新する許可を付与 | 書き込み | |||
AWS WAF V2 で定義されるリソースタイプ
以下のリソースタイプは、このサービスによって定義され、IAM アクセス許可ポリシーステートメントの Resource エレメントで使用できます。アクションテーブルの各アクションは、そのアクションで指定できるリソースタイプを示しています。リソースタイプは、ポリシーに含めることができる条件キーを定義することもできます。これらのキーは、[リソースタイプ] テーブルの最後の列に表示されます。以下の表の列の詳細については、「リソースタイプテーブル」を参照してください。
| リソースタイプ | ARN | 条件キー |
|---|---|---|
| webacl |
arn:${Partition}:wafv2:${Region}:${Account}:${Scope}/webacl/${Name}/${Id}
|
|
| ipset |
arn:${Partition}:wafv2:${Region}:${Account}:${Scope}/ipset/${Name}/${Id}
|
|
| managedruleset |
arn:${Partition}:wafv2:${Region}:${Account}:${Scope}/managedruleset/${Name}/${Id}
|
|
| rulegroup |
arn:${Partition}:wafv2:${Region}:${Account}:${Scope}/rulegroup/${Name}/${Id}
|
|
| regexpatternset |
arn:${Partition}:wafv2:${Region}:${Account}:${Scope}/regexpatternset/${Name}/${Id}
|
|
| loadbalancer/app/ |
arn:${Partition}:elasticloadbalancing:${Region}:${Account}:loadbalancer/app/${LoadBalancerName}/${LoadBalancerId}
|
|
| apigateway |
arn:${Partition}:apigateway:${Region}::/restapis/${ApiId}/stages/${StageName}
|
|
| appsync |
arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}
|
|
| userpool |
arn:${Partition}:cognito-idp:${Region}:${Account}:userpool/${UserPoolId}
|
|
| apprunner |
arn:${Partition}:apprunner:${Region}:${Account}:service/${ServiceName}/${ServiceId}
|
|
| verified-access-instance |
arn:${Partition}:ec2:${Region}:${Account}:verified-access-instance/${VerifiedAccessInstanceId}
|
|
| amplify-app |
arn:${Partition}:amplify:${Region}:${Account}:apps/${AppId}
|
AWS WAF V2 の条件キー
AWS WAF V2 では、IAM ポリシーの Condition要素で使用できる以下の条件キーを定義します。これらのキーを使用して、ポリシーステートメントが適用される条件をさらに絞り込むことができます。以下の表の列の詳細については、「条件キーテーブル」を参照してください。
すべてのサービスで使用できるグローバル条件キーを表示するには、AWS 「グローバル条件コンテキストキー」を参照してください。
| 条件キー | 説明 | タイプ |
|---|---|---|
| aws:RequestTag/${TagKey} | 各タグの許可された値のセットでアクセスをフィルタリングします | 文字列 |
| aws:ResourceTag/${TagKey} | リソースに関連付けられたタグ値でアクセスをフィルタリングします | 文字列 |
| aws:TagKeys | リクエスト内の必須タグの存在でアクセスをフィルタリングします | ArrayOfString |
| wafv2:LogDestinationResource | PutLoggingConfiguration API のログ送信先 ARN でアクセスをフィルタリングする | ARN |
| wafv2:LogScope | ログ設定 API のログスコープでアクセスをフィルタリングする | 文字列 |