RECOMMENDED
최근 공개된 추천 콘텐츠
- 서블릿 필터를 활용한 권한 기반 접근 제어와 인가 구현기술노트기술노트스프링 보안 · 1. 개요 및 구조
서블릿 필터를 활용한 권한 기반 접근 제어와 인가 구현
지난 노트에서는 세션을 사용해 사용자의 로그인 상태를 유지하고 로그아웃을 처리하는 방법을 알아보았다. 하지만 로그인한 사용자가 아무 페이지나 다 들어갈 수 있게 두는 것은 문제가 될 수 있다. 예를 들어 일반 회원에게 관리자 전용 페이지를 보여주어서는
newlec · 14시간 전조회 31 - 기술노트기술노트스프링 보안 · 1. 개요 및 구조
세션을 이용한 로그인 상태 유지와 로그아웃 구현
지난 노트에서는 쿠키를 사용해 클라이언트를 식별하고 간단한 설정값을 기억하는 방법을 알아보았다. 하지만 쿠키에 로그인 정보나 비밀번호 같은 중요한 정보를 직접 담아 주고받는 것은 매우 위험하다. 이번 노트에서는 쿠키의 보안상 한계를 극복하고, 서버가
newlec · 15시간 전조회 45 - 기술노트기술노트스프링 보안 · 1. 개요 및 구조
쿠키의 의미와 쿠키를 이용한 로그인 상태 유지
지난 노트에서는 스프링 시큐리티의 필터를 사용하지 않고, 컨트롤러와 서비스를 이용해 사용자의 아이디와 비밀번호를 검증하는 기본 로그인 로직을 직접 구현해 보았다. 하지만 해당 로직에는 치명적인 허점이 존재한다. 로그인 버튼을 눌러 인증을 완료하더라도,
newlec · 어제조회 47 - 기술노트기술노트스프링 보안 · 1. 개요 및 구조
컨트롤러를 이용한 로그인 직접 구현
이번 노트에서는 스프링 보안을 사용하지 않고 맨땅에 직접 인증과 인가 기능을 구현해볼 예정이다. 1. 직접 로그인 구현이 필요한 이유 스프링 보안을 적용하면 로그인 폼 생성, 인증 요청 처리, 세션 관리 등이 내부적으로 자동 처리된다. 그러나 내부 동
newlec · 어제조회 49 - 기술노트기술노트스프링 보안 · 1. 개요 및 구조
서블릿 필터와 스프링 보안 필터 체인의 이해
앞 노트에서 언급했던 것처럼 스프링 보안은 서블릿 필터(Servlet Filter)를 이용해 구현하고 있다. 물론 우리가 사용할 필터는 서블릿 컨테이너에 담겨 있는 필터가 아니고 스프링 IoC 컨테이너에 담겨 있는 필터이지만 그 실행 방식이나 필요성은
newlec · 2일 전조회 50 - 기술노트기술노트스프링 보안 · 1. 개요 및 구조
스프링 보안의 개념과 기술적 기반
이번 노트를 시작으로 스프링 보안에 대해서 차근차근 알아볼 예정이다. 이번 노트에서는 스프링 보안이 무엇인지와 향후 우리가 다루게 될 내용이 무엇인지를 간단히 알아보고, 다음 노트들을 통해서 좀 더 자세히 천천히 알아볼 예정이다. 그럼 첫 번째로 스프
newlec · 2일 전조회 73 - JPQL의 한계와 동적 쿼리 구현 방식기술노트기술노트JPA · 3. JPA
JPQL의 한계와 동적 쿼리 구현 방식
1. JPQL의 한계 JPQL은 엔티티 객체 모델을 기반으로 한 정밀한 쿼리 작성을 가능하게 하지만, 기본적으로 문자열 형태의 정적 쿼리(Static Query)라는 근본적인 한계를 지닌다. 문자열 기반의 정적 쿼리: @Query 어노테이션에 작성되는
newlec · 5일 전조회 61 - Spring Boot @Transactional 전파 속성과 격리 수준기술노트기술노트스프링부트 · 1. 기초
Spring Boot @Transactional 전파 속성과 격리 수준
Spring Boot에서 AOP 기반으로 작동하는 @Transactional 어노테이션은 다양한 옵션을 제공한다. 여러 트랜잭션이 묶여서 실행될 때의 거동을 정의하는 전파(Propagation) 속성과, 다중 트랜잭션이 동시 실행될 때 데이터 일관성을
newlec · 5일 전조회 34 - 기술노트기술노트스프링부트 · 1. 기초
AOP(Aspect-Oriented Programming)의 원리와 JDK Proxy 기반 구현
오늘 배울 것 AOP(Aspect-Oriented Programming, 관점 지향 프로그래밍)는 횡단 관심사를 비즈니스 로직에서 분리하여 일괄 처리하는 프로그래밍 방식이다. 이 노트에서는 AOP가 무엇인지, 왜 필요한지, 그리고 Java의 java.
newlec · 7일 전조회 56 - PostgreSQL 제약조건 실습 — NOT NULL, DEFAULT, CHECK, PK, FK따라하기따라하기정규화와 스키마 설계
PostgreSQL 제약조건 실습 — NOT NULL, DEFAULT, CHECK, PK, FK
이번 실습에서는 제약조건을 이해한 후에 실제로 테이블에 제약조건을 설정했을 때, 그 조건이 잘 수반되는지 실습해보는 시간이다. 대상 제약조건 노트를 읽었고, PostgreSQL 기본 문법(CREATE TABLE, INSERT, SELECT)을 아는 학
newlec · 9일 전조회 65 - 기술노트기술노트정규화와 스키마 설계 · 3. 데이터베이스 설계
제약조건(Constraints)이란?
학습 목표 이번에 학습하는 내용은 제약조건에 대한 개념적인 내용이다. 실습은 별도로 준비되어 있으므로 이 노트에서는 제약조건이 무엇인지를 눈으로 읽고 머리로 이히를 목적으로 한다. 이 노트를 읽고 나면 다음과 같은 것을 할 수 있다. 제약조건(Cons
newlec · 9일 전조회 58 - 기술노트기술노트JPA · 3. JPA
트랜잭션과 트랜잭션 처리의 이해
1. 트랜잭션의 개념과 ACID 트랜잭션(Transaction)은 하나의 업무 단위를 말한다. 업무 단위라고 말하면 어렵게 느껴질 수 있는데, 우리가 사용하는 3계층 아키텍처에서 서비스가 가지는 모든 함수는 업무 단위이다. 이 업무 단위가 트랜잭션이다
newlec · 10일 전조회 60