보통 단위 테스트는 빠르게 실행되며 불편하지 않습니다. 하지만 프로젝트가 커지면 통합테스트가 많은 시간을 잡아먹는 경우가 있습니다. 그래서 통합테스트와 단위테스트를 분리하는 것이 좋습니다. 기본 Java 프로젝트 구조 build.gradle plugins { id 'org.springframework.boot' version '2.2.2.RELEASE' id 'io.spring.dependency-management' version '1.0.8.RELEASE' id 'java' } group = 'gradle' version = '0.0.1-SNAPSHOT' sourceCompatibility = '1.8' configurations { developmentOnly runtimeClasspath { ex..
SSL의 의미 SSL은 보안 소켓 계층의 약자로, (Secure Socket Layer) 입니다. 1990년대 중반 넷스케이프가 처음 개발한 것으로 데이터를 안전하게 정송하기 위한 인터넷 통신 규약 프로토콜입니다. SSL 1.0은 일반에게 공개되지는 않았다가, SSL 2.0에 심각한 결함이 있었고, 마침내 이런 결점들을 극복하고 SSL 3.0은 1996년 이후 생겨난 프로토콜들을 위한 기반을 닦았습니다. TLS와 SSL의 관계 1999년, SSL 프로토콜의 차세데 버전인 TLS(Transport Layer Security)가 등장 했습니다. TLS 프로토콜은 IETF에 의해 표준화됐으며, SSL 3.0 사이에 극적인 차이가 없습니다. 두 프로토콜은 지속적으로 업데이트되는 일련의 프로토콜들을 형성하며 SS..
OAuth 참여자 Resource Owner, User(사용자) Service Provider(카카오, Github...) Client, Consumer(우리가 만드는 서비스) OAuth 참여자의 역할 Resource Owner Service Provider에 계정이 존재하며, Client를 이용하려는 사용자. Service Provider Authorization Server(인증서버) User를 인증하고, Client를 인증하는 서버 Resource Server(리소스 서버) Open API를 제공하는 서버 Client OAuth인증을 사용해 Service Provider의 기능을 사용하려는 애플리케이션, 웹 서비스 OAuth의 흐름 +--------+ +---------------+ | |--(A)..