Я написал правило для предупреждения события ssh с «неудавшимся паролем». Это правило находится здесь:Как накапливать факты с одинаковым значением поля в drools
rule "Hello World"
when
accumulate(m:Message(eventType=="Failed password") over window:time(59s);s:count(m);s>3)
then
System.out.println("success");
Alert alert=new Alert("ssh","test");
insert(alert);
end
Это работает для первого сценария. Но я хочу расширить это правило. Я хочу накопить событие ssh с «неудавшимся паролем» с тем же адресом Src_ip. Например, если у меня 4 сбойного события ssh sys в 59s из трех разных src_ip, это правило не соответствует, но когда у меня есть 4 сбойного события ssh ssh в 59s из одного src_ip, правило совпадает. Как я должен переписать это правило для этого сценария.
Вы говорите о некоторых свойствах (ssh, src_ip) без четкой индикации, к какому классу они принадлежат. Добавьте классы Java в свой вопрос. - Кроме того, логика не ясна. Как насчет 4 неудачных событий из * two * different src_ip? Или три из одного src_ip? Или 10 из трех разных src_ip? ;-) – laune
«тогда» часть правила здесь не важна. мой вопрос связан с «когда» частью правила. с этим правилом, если есть 4 события ssh с типом «сбойным паролем» в 59s из любого src_ip, которое соответствует правилу, а «then» часть правила выполняется. Но я хочу переписать это правило в соответствие только тогда, когда 4 ssh-события с типом «сбойного пароля» в 59-х годах имеют одинаковое значение в файле src_ip. –
с этим правилом эти правила запускают правило: ts: "1: 1: 1", eventype: "сбойный пароль", src_ip: "1.1.1.1" ts: "1: 1: 3", eventype: "failed пароль ", src_ip:" 1.1.1.1 " ts:" 1: 1: 7 ", eventype:" failed password ", src_ip:" 1.1.1.5 " ts:" 1: 1: 9 ", eventype:" failed password ", src_ip:" 1.1.1.7 " Я хочу переписать правило для запуска только с этими событиями: ts:" 1: 1: 1 ", eventype:" failed password ", src_ip:" 1.1.1.1 " ts : «1: 1: 3», eventype: «failed password», src_ip: «1.1.1.1» ts: «1: 1: 7», eventype: «сбойный пароль», src_ip: «1.1.1.1» ts : «1: 1: 9», eventype: «failed password», src_ip: «1.1.1.1» –