-
[스프링 인 액션] Chapter 4 - 스프링 시큐리티 :: 스프링 시큐리티 활성화하기개발서적읽기/Spring in Action 제 5판 2020. 7. 30. 09:50
스프링 애플리케이션의 보안에서 맨 먼저 할 일은
스프링 부트 보안 스타터 의존성을 빌드 명세에 추가하는 것이다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-test</artifactId>
<scope>test</scope>
</dependency>그리고 서버 실행 후 http://localhost:8080/login 페이지를 접속하면
이러한 스프링 시큐리티 기본 인증 대화상자가 나타난다.
Username : user
Password : Using generated security password: 8ad67f80-bd2a-4e33-a9bf-219ee4e2609f
(Password는 콘솔창에 나와있다)
한번 접속해보자.
스프링 시큐리티가 어떤 보안 구성을 자동으로 제공하는지 살펴보자.
보안 스타터를 프로젝트 빌드 파일에 추가만 했을 때는 다음의 보안 구성이 제공된다.
- 모든 HTTP 요청 경로는 인증되어야 한다.
- 어떤 특정 역할이나 권한이 없다.
- 로그인 페이지가 따로 없다.
- 스프링 시큐리티의 HTTP 기본 인증을 사용해서 인증된다.
- 사용자는 하나만 있으며, 이름은 user다. 비밀번호는 암호화해 준다.
타코 클라우드 애플리케이션의 보안을 제대로 구축하려면 더 많은 작업이 필요하며
최소한 다음 기능을 할 수 있도록 스프링 시큐리티를 구성해야 한다.
- 스프링 시큐리티의 HTTP 인증 대화상자 대신 우리의 로그인 페이지로 인증한다.
- 다수의 사용자를 제공하며, 새로운 타코 클라우드 고객이 사용자로 등록할 수 있는
페이지가 있어야 한다.
- 서로 다른 HTTP 요청 경로마다 서로 다른 보안 규칙을 적용한다.
예를 들어 홈페이지와 사용자 등록 페이지는 인증이 필요하지 않다.
타코 클라우드의 이러한 보안 요구를 충족하기 위해서는
스프링 자동 구성이 하는 것을 대체하기 위한 작업을 해야 한다.
우선, 한 명 이상의 사용자를 가질 수 있도록 타코 클라우드에 적합한 사용자 스토어를 구성하자.
'개발서적읽기 > Spring in Action 제 5판' 카테고리의 다른 글
[스프링 인 액션] Chapter 4 - 스프링 시큐리티 :: 웹 요청 보안 처리하기 (0) 2020.07.30 [스프링 인 액션] Chapter 4 - 스프링 시큐리티 :: 스프링 시큐리티 구성하기 (0) 2020.07.30 [스프링 인 액션] Chapter 3 - 데이터로 작업하기 :: 스프링 데이터 JPA를 사용해서 데이터 저장하고 사용하기 (0) 2020.07.30 [스프링 인 액션] Chapter 3 - 데이터로 작업하기 :: JDBC를 사용해서 데이터 읽고 쓰기 (1) 2020.07.29 [스프링 인 액션] Chapter 2 - 웹 애플리케이션 개발하기 :: 뷰 컨트롤러로 작업하기 (0) 2020.07.29 댓글