OF-3262 (code review) Do not unlock IP-only gate based on username success
Do not let a successful login from one IP also reduce the shared IP-only counter for other IPs that this user previously used. That weakens the secondary per-IP gate.
OF-3262: Failed login tracking to use IP/Username combination
This improves failed-login tracking in the admin console by using a combination of username and IP address instead of relying solely on IP-based tracking alone. This primarily fixes an issue where a single user, behind a reverse proxy or NAT, can lock out all other users.
The old IP-only restriction is still left in place. Its default maximum attempts has been increased to a number higher than the IP/Username combination attempt maximum.
OF-3262 (code review): Improve unit test coverage for LoginLimitManager
This refactors the unit tests, adding explicit coverage for checking single gates.