According to article, first get the violation name in a separate irule and then use that violation name in second irule with your host header condition. Do not forget to change the “Specific_ASM_Violation” value with the name of matched violation, when the request with header name “abc” has no value.
when ASM_REQUEST_DONE {
if {[ASM::violation names] contains "Specific_ASM_Violation" and [HTTP::header "abc"] equals "" } {
ASM::unblock
log local0. "ASM unblocking"
}
}
what is exactly unblocked here? What if i have multiple violations in one request? Are they all unblocked if one of them contains what is defined in the irule?
Is there another way to remove the empty cookie or header before it reaches the asm processing?