Delete Cookie From Request By Regex
Problem this snippet solves:
This iRule allows an administrator to delete cookies from a request which match a defined class of regular expressions.
The rule expects a class named cookie_regex_class to contain regular expressions. If a cookie name (set to lower case) in the request matches any of the regular expressions in the class, the cookie will be removed. This rule has been used in ASM implementations to remove ASPSESSIONID cookies that aren't needed in the application.
Code :
class cookie_regex_class { "aspsessionid\w{8}" "cookie_name_one\w{8}" "cookie_name_two-\w{10}" "cookie_name_three" } # expect cookie_regex_class to contain a list of regular expressions in lower case for cookie names when HTTP_REQUEST { log local0. "Cookies: [HTTP::cookie count] - [HTTP::cookie names]" set cookies [HTTP::cookie names] # loop through each cookie by name in request foreach aCookie $cookies { # log the current cookie name log local0. "a cookie: $aCookie" # loop through each regex from the class foreach aRegex $::cookie_regex_class { # compare the current regex to the current cookie name (in lower case) if { [string tolower $aCookie] matches_regex $aRegex } { log local0. "matched cookie: $aCookie with regex: $aRegex" # loop through and remove the cookie(s) which match the regex while { [HTTP::cookie exists $aCookie] } { HTTP::cookie remove $aCookie } } else { log local0. "didn't match cookie $aCookie with regex: $aRegex" } } } }
Published Mar 17, 2015
Version 1.0CodeCentral_194
Cirrus
Joined May 05, 2019
CodeCentral_194
Cirrus
Joined May 05, 2019
No CommentsBe the first to comment