I have restricted search for each index for each user.
When I try to search with user1, I can see events from index2, and when I try to search with user2, I can see events from index1.
It should be restricted for view user1-index1 and user2-index2.
I restricted it in user role, but still able to see the events.
We experienced a very similar issue when we were setting up roles in our environment too. In our case, our users were inheriting allowed indexes from the roles that our custom roles were inheriting from. For example, say user1 is a member of the custom IT role, which inherits from the default Users role. Regardless of permissions, users in the IT role always had access to all non-internal indexes. What we had to do was remove all of the allowed indexes from the default Users role so our custom groups that were inheriting from it weren't getting access to all of the indexes as well. We then assigned the indexes in our custom groups, which fixed our issue. Hope this helps!