針對 AWS WAF 使用以身分為基礎的政策 (IAM 政策) - AWS WAF、AWS Firewall Manager 與 AWS Shield Advanced

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

針對 AWS WAF 使用以身分為基礎的政策 (IAM 政策)

本節提供以身分為基礎的政策範例,示範帳戶管理員如何將許可政策連接至 IAM 身分 (即使用者、群組和角色),並藉此授予許可,以對 AWS WAF 資源執行操作。

重要

建議您先檢閱可供您管理 AWS WAF 資源存取之基本槪念與選項的說明介紹主題。如需詳細資訊,請參閱 管理 AWS WAF 資源存取許可的概觀

如需顯示所有的 AWS WAF API 動作及其適用的各項資源表格,請參閱 AWS WAFAPI 許可:動作、資源及條件參考

主題

使用 AWS WAF 主控台所需的許可

AWS WAF 主控台提供了整合式環境,讓您能在其中建立並管理 AWS WAF 資源。除了 AWS WAFAPI 許可:動作、資源及條件參考 中記錄的 API 特定許可外,主控台提供的許多功能和工作流程通常還需具備建立 AWS WAF 資源的許可。如需額外主控台許可的詳細資訊,請參閱 客戶受管政策範例

AWS WAF 的 AWS 受管 (預先定義) 政策

AWS 透過提供獨立的 IAM 政策來解決許多常用案例,這些政策由 所建立與管理。AWS受管政策授與常見使用案例中必要的許可,讓您免於查詢需要哪些許可。如需詳細資訊,請參閱《IAM 使用者指南》中的 AWS 受管政策

下列 AWS 受管政策專屬於 AWS WAF,可連接到您帳戶中的使用者:

  • AWSWAFReadOnlyAccess— 授予唯讀存取權AWS WAF的費用。

  • AWSWAFFullAccess— 授予對的完整存取權AWS WAF的費用。

  • AWSWAFConsoleReadOnlyAccess— 授予對AWS WAF控制台,其中包括AWS WAF和集成服務,例如亞馬遜 CloudFront、Amazon API Gateway、Application Load Balancer 和AWS AppSync。

  • AWSWAFConsoleFullAccess— 授予完整存取權AWS WAF控制台,其中包括AWS WAF和集成服務,例如亞馬遜 CloudFront、Amazon API Gateway、Application Load Balancer 和AWS AppSync。

  • WAFV2LoggingServiceRolePolicy— 將訪問寫日誌授予AWS WAF記錄目的地。

注意

您可以登入 IAM 主控台並在該處搜尋特定政策,來檢閱這些許可政策。

您也可以建立自訂 IAM 政策,授予AWS WAFAPI 操作和資源。您可以將這些自訂政策連接至需要上述許可的 IAM 使用者或羣組,或連接至為您的AWS WAF的費用。

客戶受管政策範例

本節的範例提供一組範本政策可供您連接到使用者。如果您在建立政策方面是新手,我們建議您先在自己的帳戶中建立 IAM 使用者,將政策連接到該使用者,然後同本節步驟所概述。

當您將政策連接到使用者時,可以使用主控台來驗證每個政策的效果。起初,使用者沒有許可,且無法在主控台進行任何操作。隨著您將政策連接到使用者,便可以驗證使用者在主控台上能夠執行各種操作。

建議您使用兩個瀏覽器視窗:一個用於建立使用者和授與許可。另一個則透過使用者的登入資料登入 AWS Management Console,並在授與使用者許可時,驗證這些許可。

如需有關如何建立可做為執行角色的 IAM 角色操作範例AWS WAF資源,請參閲建立 IAM 角色中的IAM User Guide

範例主題

建立 IAM 使用者

首先,您需要建立 IAM 使用者,並將使用者新增至擁有管理許可的 IAM 群組,然後將管理許可授與您所建立的 IAM 使用者。然後,您可以使用特殊 URL 和使用者的登入資料存取 AWS。

如需說明,請參閱「」建立您的第一個 IAM 用户和管理員羣組中的IAM User Guide

範例 1:授予用户唯讀存取權限AWS WAF、 CloudFront,和 CloudWatch

以下政策授予用户對AWS WAF資源, 到亞馬遜 CloudFront 網絡分發和亞馬遜 CloudWatch 指標。適用於使用者需要檢視 AWS WAF 的設定、條件、規則和 Web ACL 的許可,查閱與 Web ACL 關聯的分佈,和監控指標與 CloudWatch 請求的範本。這些使用者無法建立、更新或刪除 AWS WAF 資源。

{ "Version":"2012-10-17", "Statement": [ { "Action": [ "wafv2:Get*", "wafv2:List*", "cloudfront:GetDistribution", "cloudfront:GetDistributionConfig", "cloudfront:ListDistributions", "cloudfront:ListDistributionsByWebACLId", "cloudwatch:ListMetrics", "cloudwatch:GetMetricStatistics", "ec2:DescribeRegions" ], "Effect": "Allow", "Resource": "*" } ] }

範例 2:授予用户完整存取AWS WAF、 CloudFront,和 CloudWatch

以下政策可讓使用者執行任何的 AWS WAF 操作、對 CloudFront Web 分佈執行任何操作,以及監控指標與 CloudWatch 中請求的範例。適用於 AWS WAF 管理員的使用者。

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "wafv2:*", "cloudfront:CreateDistribution", "cloudfront:GetDistribution", "cloudfront:GetDistributionConfig", "cloudfront:UpdateDistribution", "cloudfront:ListDistributions", "cloudfront:ListDistributionsByWebACLId", "cloudfront:DeleteDistribution", "cloudwatch:ListMetrics", "cloudwatch:GetMetricStatistics", "ec2:DescribeRegions" ], "Effect": "Allow", "Resource": "*" } ] }

我們強烈建議您為具有管理權限的使用者設定多重驗證 (MFA)。如需詳細資訊,請參閱「」將 Multi-Factor Authentication (MFA) 設備與AWS中的IAM User Guide

範例 3:授予特定AWS 帳戶

此政策授予以下許可給帳户 444455556666:

  • 完整存取所有的 AWS WAF 操作和資源。

  • 讀取和更新所有 CloudFront 分佈,它允許您將 Web ACL 和 CloudFront 分佈。

  • 讀取所有的權限 CloudWatch 指標和指標統計信息,以便您可以查看 CloudWatch數據和請求示例AWS WAF主控台。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "wafv2:*" ], "Resource": [ "arn:aws:wafv2:us-east-1:444455556666:*" ] }, { "Effect": "Allow", "Action": [ "cloudfront:GetDistribution", "cloudfront:GetDistributionConfig", "cloudfront:ListDistributions", "cloudfront:ListDistributionsByWebACLId", "cloudfront:UpdateDistribution", "cloudwatch:ListMetrics", "cloudwatch:GetMetricStatistics", "ec2:DescribeRegions" ], "Resource": [ "*" ] } ] }

範例 4:授予特定 Web ACL 存取權限

此政策授與以下權限給帳戶 444455556666 中的 webacl ID 112233d7c-86b2-458b-af83-51c51example:

  • 完整存取 AWS WAF GetUpdateDelete 操作和資源

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "wafv2:*" ], "Resource": [ "arn:aws:wafv2:us-east-1:444455556666:regional/webacl/test123/112233d7c-86b2-458b-af83-51c51example" ] } ] }