스프링/스프링 부트(Spring boot) 12

CSRF(Cross-site request forgery) - 사이트간 위조요청

1. CSRF 사례(2008년 옥션) 1800만 명의 개인정보가 해킹 순서 1) 옥션 관리자 중 한 명이 관리 권한을 가지고 회사 내에서 작업을 하던 중 메일을 조회(관리자로서 유효한 쿠키를 갖고 있음) 2) 해커는 태그가 들어간 코드가 담긴 이메일을 보낸다. 관리자는 이미지 크기가 0이므로 전혀 알지 못한다. 3) 피해자가 이메일을 열어볼 때, 이미지 파일을 받아오기 위해 URL이 열린다. 4) 해커가 원하는 대로 관리자의 계정이 id와 pw 모두 admin인 계정으로 변경된다.

스프링 부트 - 스프링 시큐리티 기본 이론

스프링 시큐리티 기능 - 인증 인가 - 암호화 모듈 제공 - CRSF 대응 기본 제공 결론) 1) 보안(인증과 권한, 인가)을 담당하는 스프링 하위 프레임워크 2) 보안과 관련된 많은 옵션 제공 용어정리 인증 Authentication : 해당 사용자가 본인이 맞는지를 확인하는 절차 인가 Authorization : 인증된 사용자가 요청한 자원에 접근 가능한지를 결정하는 절차 접근 주체 Principal : 보호받는 Resource에 접근하는 대상 비밀번호 Credential : Resource에 접근하는 대상의 비밀번호 권한 : 인증된 주체가 어플리케이션의 동작을 수행할 수 있도록 허락되어 있는지를 결정합니다. - 인증 과정을 통해 주체가 증명된 이후 권한을 부여할 수 있습니다. - 권한 부여에도 두 ..

스프링 부트 + JSP 연동

스프링 부트는 JSP를 권장하지 않음. 공식 문서에도 JSP 사용하는 것을 권장하지 않으며 다른 템플릿 엔진을 쓰라고 나와 있다. JSP는 JAR 패키징을 할 수 없고(war로 패키징 해야 함) 의존성 문제도 발생 할 수 있기 때문이라고 한다. 스프링에서의 JSP를 연동할라 하면 아래와 같이 한다. 1. Dependencies 추가 스프링 부트는 내장 톰켓을 가지고 있지만 이 내장 톰켓 안에 JSP를 구동시키지 않는다. 사용하고 싶은 의존성을 추가해줘야한다. org.apache.tomcat.embed tomcat-embed-jasper javax.servlet jstl 2. application.properties 파일에 내용 추가 #spring.mvc.view.prefix=/WEB-INF/views/ ..

스프링 부트(Spring boot) + maven + Oracle 11g + Mybatis 연동

pom,xml 아래 2개의 라이브러리 추가 org.mybatis.spring.boot mybatis-spring-boot-starter 2.1.4 com.oracle.database.jdbc ojdbc8 runtime ==================================================== 오라클 커넥션 풀 설정: DataSource 설정하는 것인데 스프링부트를 사용하면 application.properties에서 아래와 같이 설정 spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver spring.datasource.url=jdbc:oracle:thin:@localhost:1521/xe spring.datasourc..

스프링 부트(Spring boot) - spring-boot-starter(feat:스프링 부트 장점)

프로젝트 시작 시기에 다양한 라이브러리들을 사용하게되면 라이브러리 버전간의 충돌문제가 발생할 수 있습니다. Sprign Boot의 starter가 의존성 조합을 제공해준다면 starter-parent는 해당 의존성 조합간의 충돌 문제가 없는 검증 된 버전정보 조합을 제공합니다. spring-boot-starter-parent 2.1.7.RELEASE에서 제공하는 버전정보 조합은 Maven repository - spring-boot-stater-parent 혹은 GitHub - spring-boot-stater-parent 에서 확인 가능합니다. 우리는 아래와 같이 spring-boot-starter-parent 버전만 설정해도 수많은 라이브러리들의 버전충돌 문제를 피할 수 있습니다. - 스프링 부트 장..