1[
2  {
3    "enabled":1,
4    "version_min":300000,
5    "title":"SecRuleRemoveById (1/3)",
6    "client":{
7      "ip":"200.249.12.31",
8      "port":123
9    },
10    "server":{
11      "ip":"200.249.12.31",
12      "port":80
13    },
14    "request":{
15      "headers":{
16        "Host":"localhost",
17        "User-Agent":"curl/7.38.0",
18        "Accept":"*/*"
19      },
20      "uri":"/?key=value&key=other_value",
21      "method":"GET"
22    },
23    "response":{
24      "headers":{
25        "Date":"Mon, 13 Jul 2015 20:02:41 GMT",
26        "Last-Modified":"Sun, 26 Oct 2014 22:33:37 GMT",
27        "Content-Type":"text/html"
28      },
29      "body":[
30        "no need."
31      ]
32    },
33    "expected":{
34      "debug_log":"Skipped rule id '2'. Removed by an SecRuleRemove directive."
35    },
36    "rules":[
37      "SecRuleRemoveById 2",
38      "SecRule ARGS \"@contains test\" \"id:1,pass,t:trim\"",
39      "SecRule ARGS \"@contains test\" \"id:2,pass,t:trim\"",
40      "SecRule ARGS \"@contains test\" \"id:3,pass,t:trim\""
41    ]
42  },
43  {
44    "enabled":1,
45    "version_min":300000,
46    "title":"SecRuleRemoveById (2/3)",
47    "client":{
48      "ip":"200.249.12.31",
49      "port":123
50    },
51    "server":{
52      "ip":"200.249.12.31",
53      "port":80
54    },
55    "request":{
56      "headers":{
57        "Host":"localhost",
58        "User-Agent":"curl/7.38.0",
59        "Accept":"*/*"
60      },
61      "uri":"/?key=value&key=other_value",
62      "method":"GET"
63    },
64    "response":{
65      "headers":{
66        "Date":"Mon, 13 Jul 2015 20:02:41 GMT",
67        "Last-Modified":"Sun, 26 Oct 2014 22:33:37 GMT",
68        "Content-Type":"text/html"
69      },
70      "body":[
71        "no need."
72      ]
73    },
74    "expected":{
75      "debug_log":"Skipped rule id '2'. Removed by an SecRuleRemove directive."
76    },
77    "rules":[
78      "SecRuleRemoveById 1-3",
79      "SecRule ARGS \"@contains test\" \"id:1,pass,t:trim\"",
80      "SecRule ARGS \"@contains test\" \"id:2,pass,t:trim\"",
81      "SecRule ARGS \"@contains test\" \"id:3,pass,t:trim\""
82    ]
83  },
84  {
85    "enabled":1,
86    "version_min":300000,
87    "title":"SecRuleRemoveById (3/3)",
88    "client":{
89      "ip":"200.249.12.31",
90      "port":123
91    },
92    "server":{
93      "ip":"200.249.12.31",
94      "port":80
95    },
96    "request":{
97      "headers":{
98        "Host":"localhost",
99        "User-Agent":"curl/7.38.0",
100        "Accept":"*/*"
101      },
102      "uri":"/?key=value&key=other_value",
103      "method":"GET"
104    },
105    "response":{
106      "headers":{
107        "Date":"Mon, 13 Jul 2015 20:02:41 GMT",
108        "Last-Modified":"Sun, 26 Oct 2014 22:33:37 GMT",
109        "Content-Type":"text/html"
110      },
111      "body":[
112        "no need."
113      ]
114    },
115    "expected":{
116      "debug_log":"Skipped rule id '2'. Removed by an SecRuleRemove directive."
117    },
118    "rules":[
119      "SecRuleRemoveById 1 2-3",
120      "SecRule ARGS \"@contains test\" \"id:1,pass,t:trim\"",
121      "SecRule ARGS \"@contains test\" \"id:2,pass,t:trim\"",
122      "SecRule ARGS \"@contains test\" \"id:3,pass,t:trim\""
123    ]
124  }
125]
126