2022/06/08 Spring Security

김석진·2022년 6월 8일
0

다시 초심으로

목록 보기
18/19

Spring Security 기본개념


이러한 문제는 어떻게 해결할수 있을까?

가까운곳에서 찾아보기

로그인 이나 회원가입은 거의 모든 서비스에서 볼 수 있음
실제 로그인이 일어나고 회원가입하고 리소스를 제한하는것은 서비스에 있어서 매우 중요한 부분이다.

로그인 없이 아무나 접속해서 익명으로 서비스를 사용하거나 로그인을 했더라도 모든 사용자가 운영자 권한이 있다면 그 서비스는 오래 유지될 수 없다.

이렇기 때문에 리소스를 제한하는 조치를 해야한다.

Spring Security란?

Spring을 사용한다면 사실상 최선의 Security Framework

Web 기반 Application에 보안적인 제한을 추가하기 위해 사용하는 Security Framework중 하나이다.
Spring Security의 주된 목표는 rest api endpoint, mvc url, 정적 리소스와 같은 리소스들에 접근하려는 요청의 인증을 책임지는 것이다.
Spring Security는 Spring 생태계와 호환성이 높고 커스텀이 매우 쉽다는 장점이 있다.

인증과 인가


스프링 생태계에서 인증과 인가라는 개념을 최대한 쉽고 유연하게 구현할 수 있도록 만들어진 framework
인증과 인가는 Spring Security의 개념들 중에 하나에 그치는게 아니라 Spring Security가 궁극적으로 이루고자 하는 목표다

인증(Authentication)

인증은 사용자가 누구인지 확인하는 절차
예) 로그인

다양한 인증 방법

단순히 로그인이라고 생각을 하면안된다. 로그인을 한번 하고난 뒤 서비스를 이용하는 중에도 계속해서 인증이 이뤄져야한다.
로그인은 유저 A로 하고 실제 서비스를 유저 B로 할지 아무도 모르기 떄문이다.

인가(Authorization)

인증이 되었다고 모든작업을 할수 있는게 아니다
인가는 인증 이후 리소스에 대한 권한 통제를 의미함
클라이언트가 요청한 작업이 허가된 작업인지 확인하는 절차이다.

인가는 당신은 무엇을 할수 있는가?를 뜻함
인증이 이뤄진다음에 인가가 이뤄져야한다.

profile
주니어 개발자 되고싶어요

0개의 댓글