Разрешение трафика на определенный путь в 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, который идентифицирует ресурс).