Home
Youngho's Devlog
Cancel

[개발자 블로그] Spring Security OAuth

출처 https://antdev.tistory.com/71 https://jsonobject.tistory.com/363 https://jyami.tistory.com/121

[보안] 인증과 인가

인증(Authentication) 사용자가 누구인지 확인하는 것 ex) 건물 출입이 가능한 사람인지 확인 삼성전자 직원입니까? -> 정직원 바로 출입 가능 방문자 입니까? -> 정직원 아님. 출입증을 통해 인증해야함 인가(Authorization) 사용자가 요청을 실행할 수 있는 권한 ...

[Backend] 서버 인증 방식의 종류

서버 인증 방식의 종류 HTTP의 특징으로 stateless와 connectionless를 떠올릴 수 있다. 즉, 상태 및 접속 정보를 유지하지 않는다는 점이다. 그럼 서버에서 클라이언트를 식별하기 위해선 어떻게 해야할까? 단순하게 HTTP의 헤더에 사용자의 계정 정보(Id/Password)를 넣음으로써 서버에서 식별할 수 있다. 하지만 이러한 방법...

[Backend] OAuth

OAuth란? 특정 애플리케이션(sample.com)이 다른 애플리케이션(naver, google, facebook)의 정보에 접근할 수 있는 권한을 관리하는 오픈 스탠다드 프로토콜이다. 위키백과에서는 아래와 같이 설명하고 있다. 인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹 사이트 상의 자신들의 정보에 대해 웹사이트...

[Backend] JWT와 OAuth의 관계

JWT와 OAuth를 한 번에 접하게 되면서 두 가지의 개념을 명확하게 정리하고 싶어졌다. 쉽게 표현하면 JWT는 토큰의 종류이고, OAuth는 토큰을 발급하고 인증하는 오픈 스탠다드 프로토콜이다. 기존의 /outh/token endpoint에 의해 발급되는 모든 토큰은 일종의 OAuth 프레임워크에 의해 관리된다고 볼 수 있다. { "toke...

[개발자 블로그] Spring Security 개요 및 동작 과정

실습 코드 Spring Security Spring은 매우 막강한 인증과 인가 권한을 가진 프레임워크이다. Spring Security는 Filter 기반으로 동작한다. Spring Security는 상당히 많은 Filter들을 기반으로 Filter체인을 구성한다. Filter기반이 아닌 Interceptor로는 불가능한가...

[Java] String & StringBuffer & StringBuilder

Java에서 문자열을 다루는 대표적인 클랫스로 String, StringBuffer, StringBuilder가 있습니다. 연산이 많지 않을때는 어떤 클래스를 사용하더라도 이슈가 발생할 가능성은 거의 없지만 연산 횟수가 많아지거나 멀티쓰레드를 사용하는 경우라면 각 클래스의 특징을 이해하고 적절한 클래스를 사용해야 합니다. String vs Strin...

[Java] OOP개념 및 특징

객체지향 프로그래밍(OOP: Object-Oriented Programming) 프로그래밍에서 필요한 데이터를 추상화 시켜 객체를 만들고, 객체들 간의 상호작용을 통해 로직을 구성하는 프로그래밍 방법론 예를 들어 C++과 Java가 있다. OOP의 장단점 OOP의 장점 1) 재사용성이 높다 남이 만든 클래스를 가져와서 사용할 수 있...

[개발자 블로그] Logout With Spring Security

1) Logout버튼을 누르면 /logout으로 POST방식으로 보냄. 그러면 spring에 의해 logout절차가 이뤄짐(사용자가 사용했던 쿠키 및 로그인에 관련된 정보를 제거함) 2) 성공적으로 logout됐을때 /logout?logout으로 GET방식으로 리다이렉트 시켜준다. 3) security-context.xml에 logout에 관련...

[개발자 블로그] Login With Spring Security

Spring Security spring security는 filter에 의해 구현됨(오고가는 request response를 가로채서 필터에서 거르는식으로 구현됨) 1) filter패키지 및 filter 추가 2) 관련 라이브러리 추가 config, web, core 3) web.xml에 springSecurityFilter...