跳至内容

如何使用 AWS WAF 来允许或阻止访问特定 URI 路径?

3 分钟阅读
0

我想使用 AWS WAF 来允许或阻止访问特定 URI 路径。

解决方法

要通过 IP 地址、HTTP 标头或地理位置来允许或阻止访问特定 URI 路径,请使用匹配规则语句。匹配语句会将 Web 请求与您的标准条件进行比较。

要开始,请完成以下步骤:

  1. 打开 AWS WAF 控制台
  2. 在导航窗格中,选择 AWS WAF
  3. 选择 Resources & protection packs(资源和保护包)。
  4. 选择您的 Protection pack(保护包)。
  5. 在您选择的保护包中,选择 Rules(规则)。
  6. 选择 Rules(规则)旁边的 View and edit(查看和编辑)以查看或修改与您的保护包关联的规则。
  7. 在 Manage rules(管理规则)的右侧窗格中,选择 Add rules(添加规则)。
  8. 选择 Create new rule(创建新规则)。
  9. 选择 Custom rule(自定义规则),然后选择 Next(下一步)。
  10. 对于 Rule Type(规则类型),选择 Custom rule(自定义规则),然后选择 Next(下一步)。

之后,根据您的要求,查看相应的部分并完成提供的步骤。

允许或阻止访问特定 URI 路径

完成以下步骤:

  1. 对于 Name(名称),请输入规则的名称,例如 Block-URI-access
  2. 对于 Type(类型),请选择 Regular rule(常规规则)。
  3. 对于 If a request(如果请求),请选择 Matches the statement(匹配语句)。
  4. 对于 Statement(语句),请完成以下步骤:
    对于 Inspect(检查),请选择 URI path(URI 路径)。
    对于 Match type(匹配类型),请选择 Contains string(包含字符串)。
    对于 String to match(要匹配的字符串):请输入您的 URI 路径,例如 /admin
    (可选)对于 Text transformation(文本转换),请选择文本转换或 None(无)。
  5. 对于 Action(操作),请选择 Allow(允许)或 Block(阻止),然后选择 Add rule(添加规则)。
  6. (可选)对于 Set Rule Priority(设置规则优先级),请选择您的规则,然后设置其优先级。
  7. 选择 Save(保存)。

通过 IP 地址来阻止访问特定 URI 路径

完成以下步骤:

  1. 对于 Name(名称),请输入规则的名称,例如 Allow-listed-IPs-only
  2. 对于 Type(类型),请选择 Regular rule(常规规则)。
  3. 对于 If a request(如果请求),请选择 Matches the statement (AND)(匹配所有语句 (AND))。
  4. 对于 Statement 1(语句 1),请完成以下步骤:
    对于 Inspect(检查),请选择 URI path(URI 路径)。
    对于 Match type(匹配类型),请选择 Contains string(包含字符串)。
    对于 String to match(要匹配的字符串):请输入您的 URI 路径,例如 /admin
    (可选)对于 Text transformation(文本转换),请选择文本转换或 None(无)。
  5. 对于 Statement 2(语句 2),请完成以下步骤:
    选择 Negate statement results(否定语句结果)。
    对于检查,选择源自 IP 地址
    对于 IP Set(IP 集),请选择包含您的允许列表 IP 地址的 IP 集,例如 MyTrustedIPs
    对于 IP address to use as the originating address(将 IP 地址用作原地址),请选择 Source IP address(源 IP 地址)。
  6. 对于 Action(操作),请选择 Block(阻止),然后选择 Add rule(添加规则)。
  7. (可选)对于 Set Rule Priority(设置规则优先级),请选择您的规则,然后设置其优先级。
  8. 选择 Save(保存)。

通过 HTTP 标头来阻止访问特定 URI 路径

完成以下步骤:

  1. 对于 Name(名称),请输入规则的名称,例如 Allow-specific-referer-only
  2. 对于 Type(类型),请选择 Regular rule(常规规则)。
  3. 对于 If a request(如果请求),请选择 Matches the statement (AND)(匹配所有语句 (AND))。
  4. 对于 Statement 1(语句 1),请完成以下步骤:
    对于 Inspect(检查),请选择 URI path(URI 路径)。
    对于 Match type(匹配类型),请选择 Contains string(包含字符串)。
    对于 String to match(要匹配的字符串):请输入您的 URI 路径,例如 /wp-login
  5. 对于 Statement 2(语句 2),请完成以下步骤:
    选择 Negate statement results(否定语句结果)。
    对于检查,选择单个标头
    对于 Header field name(标头字段名称),请输入您的标头名称,例如 Referer
    对于 Match type(匹配类型),请选择 Contains string(包含字符串)。
    对于 String to match(要匹配的字符串):请输入您的引用值,例如 example.com
  6. (可选)对于 Statements 1 and 2(语句 1 和 2),在 Text transformation(文本转换)下,请选择文本转换或 None(无)。
  7. 对于 Action(操作),请选择 Block(阻止),然后选择 Add rule(添加规则)。
  8. (可选)对于 Set Rule Priority(设置规则优先级),请选择您的规则,然后设置其优先级。
  9. 选择 Save(保存)。

通过地理位置来阻止访问特定 URI 路径

完成以下步骤:

  1. 对于 Name(名称),请输入规则的名称,例如 LimitAccessByCountry
  2. 对于 Type(类型),请选择 Regular rule(常规规则)。
  3. 对于 If a request(如果请求),请选择 Matches the statement (AND)(匹配所有语句 (AND))。
  4. 对于 Statement 1(语句 1),请完成以下步骤:
    对于 Inspect(检查),请选择 URI path(URI 路径)。
    对于 Match type(匹配类型),请选择 Contains string(包含字符串)。
    对于 String to match(要匹配的字符串):请输入您的 URI 路径,例如 /user/profile
    (可选)对于 Text transformation(文本转换),请选择文本转换或 None(无)。
  5. 对于 Statement 2(语句 2),请完成以下步骤:
    选择 Negate statement results(否定语句结果)。
    对于 Inspect(检查),请选择 Originates from a country in(源自于国家/地区)。
    对于 Country codes(国家/地区代码),请选择您想要检查请求的国家/地区。
    对于 IP address to use to determine the country of origin(用来确定来源国家/地区的 IP 地址),请选择 Source IP address(源 IP 地址)。
  6. 对于 Action(操作),请选择 Block(阻止),然后选择 Add rule(添加规则)。
  7. (可选)对于 Set Rule Priority(设置规则优先级),请选择您的规则,然后设置其优先级。
  8. 选择 Save(保存)。

相关信息

在 AWS WAF 中使用文本转换

设置规则优先级

如何使用 AWS WAF 来允许或阻止来自特定国家/地区或地理位置的请求?

AWS 官方已更新 1 年前