Web developer37 [Spring] 스프링 시큐리티 이해하기 스프링 시큐리티란? 스프링 시큐리티는 스프링 기반의 애플리케이션의 보안(인증과 권한)을 담당하는 프레임워크이다. 만약 시큐리티를 사용하지 않으면 자체적으로 세션을 체크하고 redirect 등을 해야 한다. 스프링 시큐리티는 보안과 관련해서 체계적으로 많은 옵션들로 이를 지원해준다. 스프링 시큐리티는 Filter 기반으로 동작하기 때문에 Spring MVC와 분리되어 관리 및 동작한다. 보안 관련 용어 더보기 접근 주체(Principal) : 보호된 대상에 접근하는 유저 인증(Authenticate) : 현재 유저가 누구인지 확인(ex. 로그인) 애플리케이션의 작업을 수행할 수 있는 주체임을 증명 인가(Authorize) : 현재 유저가 어떤 서비스, 페이지에 접근할 수 있는 권한이 있는지 검사 권한 : .. 2021. 8. 21. [Spring] 기본 설정 + Spring Security 설정 새로운 프로젝트를 생성할 때마다 해줘야 하는 기본설정들을 기억하기 위해 작성하는 글이다. web.xml 설정이 아닌 자바 설정이고 Spring Security 설정 또한 포함하여 작성하였다. +JDBC 더보기 pom.xml 4.0.0 org.edwith.webbe securityexam 0.0.1-SNAPSHOT war securityexam Maven Webapp http://www.example.com UTF-8 1.8 1.8 false 5.2.2.RELEASE junit junit 4.12 test javax.servlet javax.servlet-api 3.1.0 provided javax.servlet.jsp javax.servlet.jsp-api 2.3.2-b02 provided javax.s.. 2021. 8. 20. [Spring] MockMVC Test Web API를 많이 작성하다보면 웹 애플리케이션을 실행하고 브라우저를 열어서 테스트할 URI를 입력하고 다시 코드를 작성하고 웹 애플리케이션을 재시작하는 등을 반복하게 된다. 이때 Web API를 실행하는 실행하는 시간보다 웹 애플리케이션을 실행하고 종료하는 시간이 더 오래걸리는 상황이 발생하게 되는데 여기에는 문제점이 있다. 1. 개발자의 수동 테스트 2. 코드 수정 후 서버를 재시작하고 테스트 이런 문제를 해결하기 위해 다음과 같은 방법을 사용할 수 있다. 1. JUnit 테스트 2. MockMVC 테스트 이 글에서 MockMVC을 이용하여 Web API테스트를 직접 해보려고 한다. 1. MockMVC란? 우리는 웹 애플리케이션을 작성한 후, 해당 웹 애플리케이션을 Tomcat이라는 이름의 WAS(.. 2021. 8. 2. [Spring] Swagger를 사용하여 Web API 문서화 해보기 Swagger에 대하여 간단히 알아보고 Spring에서 Swagger를 이용해 간단한 Web API를 명세화해보려고 한다. 1. Swagger Swagger는 Web API 문서화를 위한 도구이다. https://swagger.io에서는 Swagger를 OAS(Open API Specification)이라고 소개하고 있다. 말 그대로 API들이 가지는 명세(Spec)을 관리하기 위한 프로젝트라고 말할 수 있다. Web API를 수동으로 문서화하는 것은 힘들 뿐더러 Web API의 스펙이 변경되었을 때 문서 역시 변경이 돼야 하는데 이를 유지하는 것은 쉽지 않다. Swagger를 사용하면 Web API가 수정되더라도 문서가 자동으로 갱신된다. 2. Swagger의 기능 1) API Design 2) API.. 2021. 8. 2. [Spring] IoC & DI IoC(Inversion of Control) - 작업을 수행하는 쪽에서 Object를 생성하는 제어 흐름의 개념을 거꾸로 뒤집는다. - IoC에서는 Object가 자신이 사용할 Object를 생성하거나 선택하지 않는다. - Object는 자신이 어떻게 생성되고 어떻게 사용되는지 알 수 없다. - 모든 Object는 제어 권한을 위임받는 특별한 Object에 의해서 만들어지고 사용된다. IoC 구현 방법 DL(Dependency Lookup) - 의존성 검색 저장소에 저장되어있는 Bean에 접근하기 위해 개발자들이 - 컨테이너에서 제공하는 API를 이용하여 사용하고자 하는 Bean을 Lookup하는 것 DI(Dependency Injection) - 의존성 주입 - 각 계층 사이, 각 클래스 사이에 필요.. 2021. 7. 27. 이전 1 2 3 4 5 ··· 8 다음