public class DefaultBruteForceProtector extends Object implements Runnable, BruteForceProtector
| Modifier and Type | Class and Description |
|---|---|
protected class |
DefaultBruteForceProtector.FailedLogin |
protected class |
DefaultBruteForceProtector.LoginEvent |
protected class |
DefaultBruteForceProtector.ShutdownEvent |
protected class |
DefaultBruteForceProtector.SuccessfulLogin |
| Modifier and Type | Field and Description |
|---|---|
protected KeycloakSessionFactory |
factory |
protected long |
failures |
protected long |
lastFailure |
protected int |
maxDeltaTimeSeconds |
protected LinkedBlockingQueue<DefaultBruteForceProtector.LoginEvent> |
queue |
protected boolean |
run |
protected CountDownLatch |
shutdownLatch |
protected long |
totalTime |
static int |
TRANSACTION_SIZE |
DISABLED_BY_PERMANENT_LOCKOUT| Constructor and Description |
|---|
DefaultBruteForceProtector(KeycloakSessionFactory factory) |
protected volatile boolean run
protected int maxDeltaTimeSeconds
protected KeycloakSessionFactory factory
protected CountDownLatch shutdownLatch
protected volatile long failures
protected volatile long lastFailure
protected volatile long totalTime
protected LinkedBlockingQueue<DefaultBruteForceProtector.LoginEvent> queue
public static final int TRANSACTION_SIZE
public DefaultBruteForceProtector(KeycloakSessionFactory factory)
public void failure(KeycloakSession session, DefaultBruteForceProtector.LoginEvent event)
protected UserLoginFailureModel getUserModel(KeycloakSession session, DefaultBruteForceProtector.LoginEvent event)
protected RealmModel getRealmModel(KeycloakSession session, DefaultBruteForceProtector.LoginEvent event)
public void start()
public void shutdown()
protected void logFailure(DefaultBruteForceProtector.LoginEvent event)
public void failedLogin(RealmModel realm, UserModel user, ClientConnection clientConnection)
failedLogin in interface BruteForceProtectorpublic void successfulLogin(RealmModel realm, UserModel user, ClientConnection clientConnection)
successfulLogin in interface BruteForceProtectorpublic boolean isTemporarilyDisabled(KeycloakSession session, RealmModel realm, UserModel user)
isTemporarilyDisabled in interface BruteForceProtectorpublic boolean isPermanentlyLockedOut(KeycloakSession session, RealmModel realm, UserModel user)
isPermanentlyLockedOut in interface BruteForceProtectorpublic void cleanUpPermanentLockout(KeycloakSession session, RealmModel realm, UserModel user)
BruteForceProtectorcleanUpPermanentLockout in interface BruteForceProtectorCopyright © 2021 JBoss by Red Hat. All rights reserved.