티스토리 뷰
반응형
이번에는 스프링에서 사용되는 비밀번호 암호화를 해볼 차례다. 서블릿에서 사용한 SHA512가 있었는데 스프링에서는 Bcript이라는 아주 암호화에 최적화 되어있는게 있다. 같은 번호여도 암호화하는 매초마다 그 값이 다르게 매핑이 되기 때문에 해커가 비밀번호를 뚫기에 더욱 어렵다.
1.Maven에서 라이브러리 추가하기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <!-- 스프링 시큐리티적용 구간 --> <!-- https://mvnrepository.com/artifact/org.springframework.security/spring-security-core --> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-core</artifactId> <version>5.0.6.RELEASE</version> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework.security/spring-security-web --> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-web</artifactId> <version>5.0.6.RELEASE</version> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework.security/spring-security-config --> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-config</artifactId> <version>${org.springframework-version}</version> </dependency> | cs |
MavenRepository에서 Spring security를 검색해 core, web, config이 3개를 버전에 맞게 추가해준다. 필자는 5.0.6버전을 사용하기에 그에 맞춰서 버전을 선택했다.
2.security-config.xml 파일 생성하기
security와 위에 짤렸지만 beans도 함께 클릭 후 Finish
이렇게 생성된 가운데에 아래의 bean객체를 추가하여 자동으로 찾을 수 있게 해준다.
<bean class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder" id="bcryiptPasswordEncoder"/>
3.web.xml에 등록하기
위와 같이 새로 등록한 시큐리티 컨피그 파일을 web.xml에 올려주면 설정 끝!
4.직접 사용해보기
Autowired로 Bcrypt객체를 호출해서 아래처럼 사용하면 콘솔 창 처럼 1234가 암호화가 된다. 주의할점은 이 bcrypt는 같은 번호여도 매초마다 암호화가 다르게 적용되기 때문에 파란색 네모의 문법으로 조건이 맞나 확인해야한다.
반응형
'Back-end > Spring' 카테고리의 다른 글
Spring log4j 이용하여 기록남기기 (4) | 2019.02.19 |
---|---|
Spring Session으로 로그인관리, ModelAndView사용하기 (0) | 2019.02.18 |
Spring STS TypeHandler, String[] ->String으로 자동변환 (0) | 2019.02.17 |
Spring STS의 root Context주소 바꾸기 (0) | 2019.02.16 |
Spring STS 설정하기#2 (데이터베이스 등록), 여러가지 파라미터 (0) | 2019.02.15 |
댓글