Spring Security 설정 후 로그인을 해보면 아이디나 비밀번호가 틀려도 모두 BadCredentialException만 발생해서 두 가지 에러상황을 따로 처리할 수 없다. 해당 이슈를 구분할 수 있는 setHideUserNotFoundException설정이 기본 true로 설정되어있어 그렇다고한다. 더 강한 보안을 위해서 그렇다고 하는데 잘 이해가 안간다... 

 

암튼 이 설정값은 AuthenticationProvider 생성 시에 false로 수정할 수 있다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
@Bean
public DaoAuthenticationProvider daoAuthenticationProvider() {
    DaoAuthenticationProvider bean = new DaoAuthenticationProvider();
    bean.setHideUserNotFoundExceptions(false);
    bean.setUserDetailsService(userDetailsService);
    bean.setPasswordEncoder(passwordEncoder());
    
    return bean;
}
 
@Override 
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
    auth.authenticationProvider(this.daoAuthenticationProvider());
}
cs

Security Config 설정파일에서 AuthenticationProvider 생성 시 해당 값을 false로 지정한 뒤 적용한다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@Override
public void onAuthenticationFailure(
    HttpServletRequest request, 
    HttpServletResponse response, 
    AuthenticationException e) throws IOException, ServletException {
 
    String sErrMsg = "";
    if (e instanceof UsernameNotFoundException) {
        sErrMsg = "존재하지 않는 사용자입니다.";
    } else if (e instanceof BadCredentialsException) {
        sErrMsg = "비밀번호가 틀립니다.";
    } else {
        sErrMsg = "기타 인증오류입니다.";
    }
    
    ...
}
cs

AuthenticationFailureHandler를 구현한 핸들러에서 UsernameNotFoundException을 처리할 수 있다.

 

참고)

cyr9210.github.io/2019/09/30/Security/usernamenotfound/

 

인증 시, UsernameNotfoundException 발생 안함 문제(BadCredentials Exception만 발생)

SpringSecurityDebug인증 시, UsernameNotfoundException 발생 안함 문제(BadCredentials Exception만 발생)

cyr9210.github.io

www.programmersought.com/article/8509702354/

 

2019-01-10 springboot + spring-security The error message when logging in is "Bad Credential" instead of specific information...

In the background, if the username is incorrectly logged in, there is a specific error exception message returned. But in the front-end interface, I only saw "Bad Credential" instead of specific error messages. Keep track of the code and find the problem h

www.programmersought.com

codevang.tistory.com/268

 

스프링 Security_로그인_로그인 실패 대응 로직 [3/9]

- Develop OS : Windows10 Ent, 64bit - WEB/WAS Server : Tomcat v9.0 - DBMS : MySQL 5.7.29 for Linux (Docker) - Language : JAVA 1.8 (JDK 1.8) - Framwork : Spring 3.1.1 Release - Build Tool : Maven 3.6..

codevang.tistory.com

 

Posted by 셋부터넷
,

MySQL에서 특정날짜 사이의 날짜 목록 모두 가져오기

1
2
3
4
5
6
7
8
9
select * from 
(select adddate('2010-01-01',t4.i*10000 + t3.i*1000 + t2.i*100 + t1.i*10 + t0.i) selected_date from
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t0,
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t1,
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t2,
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t3,
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t4) v
where selected_date 
between '2018-09-10' and '2018-10-31'
cs

 

 

참고 : stackoverflow.com/questions/9295616/how-to-get-list-of-dates-between-two-dates-in-mysql-select-query

 

How to get list of dates between two dates in mysql select query

I want list of dates lies between two dates by select query. For example: If i give '2012-02-10' and '2012-02-15' I need the result. date ---------- 2012-02-10 2012-02-11 2012-02-12 2012-0...

stackoverflow.com

 

 

Posted by 셋부터넷
,

Eclipse사용 중 특정 프로젝트의 pom.xml에서 첫문단 <?xml version="1.0" encoding="UTF-8"?> 오류발생 시 아래와 같이 처리

 

1. m2e 커넥터 설치

참고 : download.eclipse.org/m2e-wtp/releases/1.4/

 

Eclipse software repository | The Eclipse Foundation

The Eclipse Foundation - home to a global community, the Eclipse IDE, Jakarta EE and over 360 open source projects, including runtimes, tools and frameworks.

download.eclipse.org

또는

2. maven-jar-plugin 다운그레이드

1
2
3
4
<properties>
    <!-- ... -->
    <maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
</properties>
cs

pom.xml에 추가

참고 : stackoverflow.com/questions/56455851/maven-pom-xml-problem-unknown-error-at-top-line-xml-version-1-0-encoding

 

Maven POM.xml problem - Unknown error at top line ( )

I am setting up a project in STS with Spring starter project and added required dependencies like spring security and JSP. But the top line of pom file throwing an error as Unknown Can anybody he...

stackoverflow.com

 

 

 

Posted by 셋부터넷
,