SUPPORT-9083: Add local excp
This commit is contained in:
parent
3ac1a2b232
commit
5b1bc1af76
3 changed files with 14 additions and 4 deletions
|
|
@ -8,10 +8,13 @@ import java.util.concurrent.CopyOnWriteArrayList;
|
|||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import ru.micord.ervu.security.esia.exception.EsiaException;
|
||||
import org.springframework.context.support.MessageSourceAccessor;
|
||||
import ru.micord.ervu.security.esia.model.ExpiringState;
|
||||
import ru.micord.ervu.security.esia.model.ExpiringToken;
|
||||
|
||||
import ru.cg.webbpm.modules.core.runtime.api.LocalizedException;
|
||||
import ru.cg.webbpm.modules.core.runtime.api.MessageBundleUtils;
|
||||
|
||||
/**
|
||||
* @author Eduard Tihomirov
|
||||
*/
|
||||
|
|
@ -20,6 +23,8 @@ public class EsiaAuthInfoStore {
|
|||
private static final Map<String, ExpiringToken> ACCESS_TOKENS_MAP = new ConcurrentHashMap<>();
|
||||
private static final Map<String, ExpiringToken> REFRESH_TOKENS_MAP = new ConcurrentHashMap<>();
|
||||
private static final Map<String, List<ExpiringState>> PRNS_UUID_STATE_MAP = new ConcurrentHashMap<>();
|
||||
private static final MessageSourceAccessor MESSAGE_SOURCE = MessageBundleUtils.createAccessor(
|
||||
"messages/common_errors_messages");
|
||||
|
||||
public static void addAccessToken(String prnOid, String token, long expiresIn) {
|
||||
if (token != null) {
|
||||
|
|
@ -89,8 +94,11 @@ public class EsiaAuthInfoStore {
|
|||
if (states == null) {
|
||||
states = new CopyOnWriteArrayList<>();
|
||||
}
|
||||
else {
|
||||
states.removeIf(ExpiringState::isExpired);
|
||||
}
|
||||
if (states.size() >= attemptsCount) {
|
||||
throw new EsiaException("The number of login attempts has been exceeded.");
|
||||
throw new LocalizedException("login_attempts_exceeded", MESSAGE_SOURCE);
|
||||
}
|
||||
states.add(newState);
|
||||
return states;
|
||||
|
|
|
|||
|
|
@ -1,2 +1,3 @@
|
|||
kafka_reply_timeout=Превышено время ожидания ответа от сервера.
|
||||
access_denied=Доступ запрещен. Пользователь должен быть включен в группу "Сотрудник, ответственный за военно-учетную работу" в ЕСИА
|
||||
access_denied=Доступ запрещен. Пользователь должен быть включен в группу "Сотрудник, ответственный за военно-учетную работу" в ЕСИА
|
||||
login_attempts_exceeded=Слишком большое количество попыток авторизоваться в ЕСИА за короткий промежуток времени. Рекомендуем почистить cookie и cash браузера, после повторить авторизацию.
|
||||
|
|
@ -1,2 +1,3 @@
|
|||
kafka_reply_timeout=Превышено время ожидания ответа от сервера.
|
||||
access_denied=Доступ запрещен. Пользователь должен быть включен в группу "Сотрудник, ответственный за военно-учетную работу" в ЕСИА
|
||||
access_denied=Доступ запрещен. Пользователь должен быть включен в группу "Сотрудник, ответственный за военно-учетную работу" в ЕСИА
|
||||
login_attempts_exceeded=Слишком большое количество попыток авторизоваться в ЕСИА за короткий промежуток времени. Рекомендуем почистить cookie и cash браузера, после повторить авторизацию.
|
||||
Loading…
Add table
Add a link
Reference in a new issue