INTP 개발자
close
프로필 배경
프로필 로고

INTP 개발자

  • 분류 전체보기 (390) N
    • Java (54)
      • 소개 (2)
      • 기본 문법 및 OOP (9)
      • Java API (0)
      • Java 응용 프로그래밍 (0)
      • Java 8+ (0)
      • Java 외부 라이브러리 (0)
    • Spring (0)
      • Spring Core (0)
      • Spring Web (0)
      • Spring Data (0)
      • Spring Infra (0)
    • Docker (0)
    • Messaging & Event (3) N
      • EDA(Event Driven Architectu.. (2) N
      • Kafka (1) N
    • CS (16)
      • 면접 준비 (7)
      • 운영체제 (0)
      • 네트워크 (2)
      • HTTP (6)
      • 스프링(Spring) IoC 컨테이너 (0)
      • 알고리즘 (1)
    • Web (13)
    • AWS (6)
    • Spring Framework (33)
    • Spring Boot (10)
    • Spring Data (22)
      • JPA (14)
      • Query DSL (7)
      • Redis (1)
    • Spring Security (9)
    • Spring Batch (4)
    • MyBatis (10)
    • Front-End (51)
      • JS (27)
      • Vue.js (17)
      • React (5)
      • JQuery (0)
      • d3.js (2)
    • DBMS (24)
      • SQL, RDBMS (16)
      • MongoDB (5)
      • Redis (3)
    • Kafka (3)
    • 리눅스 (Linux) (4)
    • 디자인 패턴 (3)
    • VCS (8)
    • API (0)
    • TOOL (3)
    • Reading Book (28)
      • 이펙티브 자바 (11)
      • Clean Code (10)
      • 1분 설명력 (4)
      • HOW TO 맥킨지 문제해결의 기술 (3)
    • C# (4)
    • NSIS (6)
    • JSP & Servlet (65)
      • 개념 (42)
      • 실습 (23)
    • ETC (11)
  • 홈
  • 태그
Spring Security OAuth 2.0를 이해해보자

Spring Security OAuth 2.0를 이해해보자

OAuth란? 게임이나 쇼핑몰 같은 웹사이트를 이용하다보면 [Google로 간편 로그인], [NAVER로 간편 로그인] 등과 같이 타 서비스의 계정으로 로그인할 수 있도록 구현된 것을 확인할 수 있습니다. 타 서비스의 계정을 통해 로그인하는 기능을 구현하는 가장 쉬운 방법은 구현하고자 하는 웹 사이트에서 Google이나, NAVER의 아이디나 비밀번호를 요청하여 제공받고, 이를 저장하여 사용하는 방법일 것입니다. 하지만 이런 방법은 보안상으로 좋지 않은 방법입니다. 사용자들은 가입하고자 하는 웹 사이트에 자신의 Google이나 NAVER 계정 정보를 줘야하고, Google이나 NAVER 입장에서도 자신이 갖고 있는 사용자의 정보를 다른 웹 사이트에 공유한다는 것이 부담스럽기 때문입니다. 이를 해결하고자 ..

  • format_list_bulleted Spring Security
  • · 2023. 6. 14.
  • textsms
Google Login (OAuth2.0: Open Authorization)

Google Login (OAuth2.0: Open Authorization)

Google 서비스 등록 https://console.cloud.google.com/getting-started Google Cloud console console.cloud.google.com 1.새 프로젝트 생성 2.생성한 프로젝트 선택 사이드에 있는 네비게이션 바에서 아래 이미지 처럼 클릭 3.사용자 인증 정보 -> OAuth 클라이언트 ID 만약 OAuth 동의를 하지 않은 상태면 아래 버튼을 클릭하여 OAuth 동의를해준다. OAuth 동의를 했다면 3-2) 단계로 넘어가자. 3-1)OAuth 동의 채울 수 있는 부분을 채워준 후 [2:범위] 단계로 넘어간다. 사용자의 정보를 어느 범위까지 액세스할 수 있는지 결정하는 곳이다. 테스트할 사용자의 메일을 입력해준다. 3-2) OAuth 클라이언트 ..

  • format_list_bulleted Spring Security
  • · 2022. 10. 15.
  • textsms
Thymeleaf에서 Spring Security 이용

Thymeleaf에서 Spring Security 이용

설정 implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity5' 코드 Member Page ADMIN ROLE MANAGER ROLE USER ROLE ADMIN OR MANAGER ROLE 인증한 경우 익명인 경우(인증한 경우를 제외한 경우) Authenticated username: Authenticated user roles: 모든 권한을 가진 1user@dutmdcjf.com으로 접속한 경우 USER 권한만 가진 100user@dutmdcjf.com으로 접속한 경우

  • format_list_bulleted Spring Security
  • · 2022. 10. 15.
  • textsms
WebSecurityConfigurerAdapter Deprecated

WebSecurityConfigurerAdapter Deprecated

WebSecurityConfigurerAdapter Deprecated 이유 시큐리티 설정 클래스를 사용하려 WebSecurityConfigurerAdapter 클래스를 상속받으려 했는데 스프링 부트 2.7, Spring Security 5.7 이후 버전부터 WebSecurityConfigurerAdapter 클래스가 Deprecated 되었다. 해결: WebSecurityConfigurerAdapter 대체 이에 대한 대처 방법으로 공식 문서를 확인하면 된다. 공식 문서에 나와있는 여러 대체 방법 중 HttpSession 기반인 HttpSecurity 기반 부분을 옮겨적도록 하겠다. HttpSecurity 구성 변경 전: WebSecurityConfigurerAdapter를 상속 @Configurati..

  • format_list_bulleted Spring Security
  • · 2022. 10. 14.
  • textsms
Spring Security 프로젝트 시작

Spring Security 프로젝트 시작

의존성 추가 Spring Boot DevTools Spring Web Lombok Thymeleaf Spring Data JPA MariaDB Driver dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-security' implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' implementation '..

  • format_list_bulleted Spring Security
  • · 2022. 10. 14.
  • textsms
Spring Security @PreAuthorize, @PostAuthorize, @Secured

Spring Security @PreAuthorize, @PostAuthorize, @Secured

Spring Security에서 메서드 수준 접근 제어를 위해 사용되는 어노테이션들이 있습니다. 이 어노테이션들을 사용하여 메서드의 실행 전후에 인가 검사를 수행하여 접근 권한을 제어할 수 있습니다. @PreAuthorize 메소드가 실행되기 전에 인가(Authorization)를 검사하는데 사용됩니다. 메소드의 실행 전에 지정된 스프링 EL(SpEL) 표현식을 평가하고, 표현식이 true인 경우에만 메소드가 실행됩니다. 인가 검사를 통과하지 못하면 예외가 발생하며, 메소드 실행은 중지됩니다. @PreAuthorize("hasRole('ROLE_ADMIN')") public void deleteUser(int userId) { // ... } @PostAuthorize 메소드 실행 후에 인가(Author..

  • format_list_bulleted Spring Security
  • · 2022. 10. 2.
  • textsms
  • navigate_before
  • 1
  • 2
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (390) N
    • Java (54)
      • 소개 (2)
      • 기본 문법 및 OOP (9)
      • Java API (0)
      • Java 응용 프로그래밍 (0)
      • Java 8+ (0)
      • Java 외부 라이브러리 (0)
    • Spring (0)
      • Spring Core (0)
      • Spring Web (0)
      • Spring Data (0)
      • Spring Infra (0)
    • Docker (0)
    • Messaging & Event (3) N
      • EDA(Event Driven Architectu.. (2) N
      • Kafka (1) N
    • CS (16)
      • 면접 준비 (7)
      • 운영체제 (0)
      • 네트워크 (2)
      • HTTP (6)
      • 스프링(Spring) IoC 컨테이너 (0)
      • 알고리즘 (1)
    • Web (13)
    • AWS (6)
    • Spring Framework (33)
    • Spring Boot (10)
    • Spring Data (22)
      • JPA (14)
      • Query DSL (7)
      • Redis (1)
    • Spring Security (9)
    • Spring Batch (4)
    • MyBatis (10)
    • Front-End (51)
      • JS (27)
      • Vue.js (17)
      • React (5)
      • JQuery (0)
      • d3.js (2)
    • DBMS (24)
      • SQL, RDBMS (16)
      • MongoDB (5)
      • Redis (3)
    • Kafka (3)
    • 리눅스 (Linux) (4)
    • 디자인 패턴 (3)
    • VCS (8)
    • API (0)
    • TOOL (3)
    • Reading Book (28)
      • 이펙티브 자바 (11)
      • Clean Code (10)
      • 1분 설명력 (4)
      • HOW TO 맥킨지 문제해결의 기술 (3)
    • C# (4)
    • NSIS (6)
    • JSP & Servlet (65)
      • 개념 (42)
      • 실습 (23)
    • ETC (11)
최근 글
인기 글
최근 댓글
태그
  • #mybatis
  • #servlet
  • #querydsl
  • #환경 세팅
  • #jsp
  • #회원 관리
  • #Java
  • #이펙티브 자바
  • #JDBC
  • #게시판
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바