Разрешение трафика на определенный путь в AWS WAF

То, как работает AWS WAF, очень непонятно, на данный момент я пытаюсь разрешить весь трафик на определенный путь.

Давайте скажем все /admin должно быть разрешено и не проходить через xss или же sql фильтры, которые я добавил из "общих атак" к моей установке через их официальное руководство: https://docs.aws.amazon.com/waf/latest/developerguide/tutorials-common-attacks.html

Но пользовательский интерфейс и документы делают не совсем понятным, как это сделать. Любая помощь или ресурсы будут очень полезны.

3 ответа

Является ли /admin частью URL? Если да, можете ли вы написать простое правило совпадения строк в URL, чтобы добавить его в белый список?

К вашему сведению, правила запускаются в соответствии с порядком, который вы указали, поэтому правила белого списка должны быть на вершине.

      # waf using rate-based rule 

resource "aws_wafv2_web_acl" "example" {
    name        = "example"
    description = "Example of a regional rate based statement."
    scope       = "REGIONAL"

    default_action {
      allow {}
    }

    rule {
        name     = "LoginRateLimit"
        priority = 0

        action {
            count {}
        }

        visibility_config {
            cloudwatch_metrics_enabled = true
            metric_name                = "Metric-Limit"
            sampled_requests_enabled   = true
        }

        statement {
            rate_based_statement {
                limit              = 500
                aggregate_key_type = "IP"

                scope_down_statement {
                    byte_match_statement {
                        field_to_match {
                            uri_path {}
                        }

                        positional_constraint = "CONTAINS"
                        search_string         = "login"
                        text_transformation {
                            priority = 0
                            type     = "NONE"
                        }
                    }

                }

            }
        }
    }

    visibility_config {
        cloudwatch_metrics_enabled = true
        metric_name                = "any-name"
        sampled_requests_enabled   = true
    }
}

Вы можете фильтровать и добавлять разные правила для разных путей, используя условия соответствия строк.

Настройте его для фильтрации по части URI (URL, который идентифицирует ресурс).

Другие вопросы по тегам