public class BruteForceProtector extends Object implements Runnable
| Modifier and Type | Class and Description |
|---|---|
protected class |
BruteForceProtector.FailedLogin |
protected class |
BruteForceProtector.LoginEvent |
protected class |
BruteForceProtector.ShutdownEvent |
| Modifier and Type | Field and Description |
|---|---|
protected KeycloakSessionFactory |
factory |
protected long |
failures |
protected long |
lastFailure |
protected static org.jboss.logging.Logger |
logger |
protected int |
maxDeltaTimeSeconds |
protected LinkedBlockingQueue<BruteForceProtector.LoginEvent> |
queue |
protected boolean |
run |
protected CountDownLatch |
shutdownLatch |
protected long |
totalTime |
static int |
TRANSACTION_SIZE |
| Constructor and Description |
|---|
BruteForceProtector(KeycloakSessionFactory factory) |
| Modifier and Type | Method and Description |
|---|---|
void |
failedLogin(RealmModel realm,
String username,
org.keycloak.common.ClientConnection clientConnection) |
void |
failure(KeycloakSession session,
BruteForceProtector.LoginEvent event) |
protected RealmModel |
getRealmModel(KeycloakSession session,
BruteForceProtector.LoginEvent event) |
protected UsernameLoginFailureModel |
getUserModel(KeycloakSession session,
BruteForceProtector.LoginEvent event) |
boolean |
isTemporarilyDisabled(KeycloakSession session,
RealmModel realm,
String username) |
protected void |
logFailure(BruteForceProtector.LoginEvent event) |
void |
run() |
void |
shutdown() |
void |
start() |
protected static org.jboss.logging.Logger logger
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<BruteForceProtector.LoginEvent> queue
public static final int TRANSACTION_SIZE
public BruteForceProtector(KeycloakSessionFactory factory)
public void failure(KeycloakSession session, BruteForceProtector.LoginEvent event)
protected UsernameLoginFailureModel getUserModel(KeycloakSession session, BruteForceProtector.LoginEvent event)
protected RealmModel getRealmModel(KeycloakSession session, BruteForceProtector.LoginEvent event)
public void start()
public void shutdown()
protected void logFailure(BruteForceProtector.LoginEvent event)
public void failedLogin(RealmModel realm, String username, org.keycloak.common.ClientConnection clientConnection)
public boolean isTemporarilyDisabled(KeycloakSession session, RealmModel realm, String username)
Copyright © 2016 JBoss by Red Hat. All rights reserved.