본문 바로가기

SpringSecurity OAuth26

<Step 3> OAuth2.0 Client 🎶 OAuth2.0 Client 개요 OAuth 2.0 인가 프레임워크의 역할 중 인가 서버 및 리소스 서버와의 통신을 담당하는 클라이언트의 기능을 필터 기반으로 구현한 모듈 간단한 설정만으로 OAuth 2.0 인증 및 리소스 접근 권한, 인가 서버 엔드 포인트 통신 등의 구현이 가능하며 커스터마이징의 확징이 용이하다. ✔ OAuth 2.0 Login 어플리케이션의 사용자를 외부 OAuth 2.0 Provider나 OpenID Connect 1.0 Provider 계정으로 로그인 할 수 있는 기능을 제공한다. 글로벌 서비스 프로바이더인 "구글 계정으로 로그인", "깃허브 계정으로 로그인" 기능을 OAuth 2.0 로그인을 구현해 사용할 수 있도록 지원한다. OAuth 2.0 인가 프레임워크의 권한 부여 .. 2023. 9. 19.
<Step 2> OAuth2 권한 부여 타입 🚩 OAuth 2.0 Grant Types : 권한 부여란 클라이언트가 사용자를 대신해서 사용자의 승인하에 인가서버로 부터 권한을 부여받는 것을 의미한다. 1. Authorization Code Grant Type : 권한 코드 부여 타입, 서버 사이드 어플리케이션 (웹 어플리케이션), 보안에 가장 안전한 유형 2. Implicit Grant Type (Deprecated) : 암시적 부여 타입, 공개 클라이언트 어플리케이션 (SPA 기반 자바스크립트 앱, 모바일 앱), 보안에 취약 3. Resource Owner Password Credentials Grant Type (Deprecated) : 리소스 사용자 비밀번호 자격 증명 부여 타입, 서버 어플리케이션, 보안에 취약 4. Client Creden.. 2023. 9. 3.
<Step 1> OAuth 2.0 개념 📌 OAuth 2.0 소개 OAuth = Open + Authorization The OAuth 2.0 Authorization Framework (RFC 6749) : OAuth 2.0 인가 프레임 워크는 애플리케이션이 사용자 대신하여 사용자의 자원에 대한 제한된 액세스를 얻기 위해 승인 상호작용을 함으로써 애플리케이션이 자체적으로 액세스 권한을 얻도록 한다. ✔ OAuth 2 이전 방식의 문제점 아이디와 패스워드가 노출되어 보안에 취약 Protected Resource 의 모든 서비스를 제한없이 사용 가능 클라이언트 애플리케이션을 신뢰할 수 있는가? ✔ OAuth 2 방식 아이디와 패스워드로 로그인 할 필요가 없다 Protected Resource의 서비스를 범위에 따라 제한할 수 있다 클라이언트 어.. 2023. 9. 2.
<Step 0> 선수 지식 - Spring Security 📌 SecurityBuilder / SecurityConfigurer ✔ 개념 및 구조 SecurityBuilder 는 빌더 클래스로서 웹 보안을 구성하는 빈 객체와 설정 클래스들을 생성하는 역할을 하며 WebSecurity, HttpSecurity 가 있다. SecurityConfigurer 는 Http 요청과 관련된 보안 처리를 담당하는 필터들을 생성하고 여러 초기화 설정에 관여한다. SecurityBuilder 는 SecurityConfigurer 를 포함하고 있으며 인증 및 인가 초기화 작업은 SecurityConfigurer 에 의해 진행된다. 📌 CustomSecurityConfigurer 만들기 ✔ 자동 설정에 의한 초기화 진행 @Bean @Order(SecurityProperties.BAS.. 2023. 8. 31.