전체 글 (67) 썸네일형 리스트형 http 에서 https로 전환하기 🗯️ 문제 기존 설계에서 https 설계 단계에서는 https의 도입은 고려하지 않았습니다. 그 이유는 security에 대한 숙련도가 낮고 기능 개발에 좀더 집중했기 때문에 https 설정을 하지 않아도 기본적인 기능이 수행될 것이라 생각했기 때문입니다. https로의 전환 이유? https로 전환하기로 한 이유는 2가지입니다. 보안 이슈와 Mixed content 이슈 입니다. 1. 보안 이슈 현재 개발 단계에서는 외부에 페이지를 개방하지 않기 때문에 문제가 발생하지 않을 수 있지만, 나중을 생각하면 https의 도입을 필수로 해야한다는 멘토님의 조언이 있어서 도입을 고려했습니다. 2. 프론트의 Mixed content 이슈 프론트엔드 서버에서 https로 배포했기 때문에 http로 배포된 백엔드 a.. [백준 11951번] 태상이의 훈련소 생활 https://www.acmicpc.net/problem/19951 19951번: 태상이의 훈련소 생활 2020년 5월 14일 논산훈련소에 입대한 태상이는 첫 총기 훈련에서 가스 조절기를 잃어버리는 중대한 실수를 범했다. 그로 인해, 태상이는 조교들에게 눈총을 받게 되었다. 조교들은 태상이에게 연 www.acmicpc.net 접근 과정 1. 어떤 문제로 이해 했는가? 그리고 문제의 제약 조건은? 연병장의 흙을 조교의 지시에 맞게 옮기는 작업을 한다. N개의 칸으로 이루어져있고, 각 칸마다 높이가 주어지는데 조교 M명이 i~j칸을 높이 k만큼 덮거나 파내라고 지시한다. 작업을 하기 전 최종 높이를 미리 구해보자 2. 나의 방식대로 문제를 재정의 하자. N칸의 각 높이가 주어지고, 파내거나 덮는 k값을 연속.. [백준 11659번] 구간 합 구하기 4 https://www.acmicpc.net/problem/11659 11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net 접근 과정 1. 어떤 문제로 이해 했는가? 그리고 문제의 제약 조건은? N개의 숫자가 주어졌을 때, 인덱스 i에서 j까지의 합을 구하는 문제 시간제한 : 1초 1 ≤ N ≤ 100,000 1 ≤ M ≤ 100,000 1 ≤ i ≤ j ≤ N 2. 나의 방식대로 문제를 재정의 하자. 구간합을 구하는 문제 3. 어떤 알고리즘과 자료구조를 사용할 것인가? 구간합을 구해야 한다. .. [백준 6603번] 로또 접근 과정 1. 어떤 문제로 이해 했는가? 그리고 문제의 제약 조건은? {1, 2, ..., 49}에서 수 6개를 고르는 로또에서 k개의 수를 골라 집합 S를 만들고, 이 수에서 고를 수 있는 로또의 방법을 모두 출력하는 문제 제약조건 k (6 < k < 13) 시간제한 : 1초 S는 오름차순으로 주어짐 입력의 마지막 줄은 0 2. 나의 방식대로 문제를 재정의 하자. k개 중 6개를 고르는 조합을 완성하기 3. 어떤 알고리즘과 자료구조를 사용할 것인가? 재귀를 이용한 조합 구하기 4. 어떻게 계산할 것인가? 1) 입력 bufferedReader StringBuilder 5. 주의할 점은 무엇인가? 순서는 고려하지 않음 6. 풀이 과정 import java.io.*; import java.util.*; p.. [백준 7568번] 덩치 **접근 과정 어떤 문제로 이해 했는가? 그리고 문제의 제약 조건은?** N명의 사람의 키, 몸무게 값이 주어지고, 키와 몸무게가 모두 큰 경우만 덩치가 더 크다고 말할 수 있다. 덩치 등수가 자신보다 더 큰 덩치의 사람 수로 정해지고, 자신보다 더 큰 덩치의 사람이 k명이라면 그 사람의 덩치 등수는 k+1이 된다. 이때 덩치 등수를 계산하시오. 제약조건 2 ≤ N ≤ 50 10 ≤ x, y ≤ 200 2. 나의 방식대로 문제를 재정의 하자. 각 사람별로 그 사람보다 큰 덩치를 가진 사람 수를 계산한 후 등수를 매긴다. 3. 어떤 알고리즘과 자료구조를 사용할 것인가? 이중 리스트에 전체 사람의 정보를 저장한 후, 이중for문으로 모든 사람을 비교한다. 4. 어떻게 계산할 것인가? 1) 입력 Buffere.. 디자인 패턴 - 상태 패턴 상태머신 객체 상태 다이어그램 상태 머신 다이어그램이란 객체의 행동 다이어그램 중 하나이다. 객체는 특정 상태를 지니며 이 상태는 이벤트와 같은 액션에 의하여 변경될 수 있다. 이러한 객체의 상태와 상태의 변화를 도식화 한 다이어그램이 객체 상태 다이어그램이다. 상태 패턴(state pattern) 상태패턴은 3가지로 구서된다. State(상태) - interface 상태가 변할 때마다 다른 동작을 하는 인터페이스(API)를 결정합니다. State(구체적인 상태) - 구현체 State의 인터페이스(API)를 구체적으로 구현합니다. Context(상황) 현재의 상태를 나타내는 ConcreteState 역할을 가집니다. 또한 State 패턴의 이용자에게 필요한 인터페이스(API)를 결정합니다. 구현 형광등을.. ExceptionTranslationFilter ExceptionTranslationFilter는 FilterChainProxy를 구성하는 filter중 하나로, 요청을 처리하는 도중 발생할 수 있는 예외에 대한 라우팅과 위임을 처리한다. FilterSecurityInterceptor와 밀접한 관계가 있는데, 그 이유는 ExceptionTranslationFilter가 try-catch 블록으로 감싼뒤 SecurityInterceptor를 실행하는 구조이고, 이 과정에서 발생하는 에러를 처리하는 필터이기 때문이다. 발생하는 예외는 2가지로 흐름은 다음과 같다. 1. AuthenticdationException AuthenticdationException은 인증예외이다. AuthenticationEntryPoint를 사용해 처리한다. 예외 발생 시 로그.. AnonymousAuthenticationFilter spring security는 웹 요청이 들어오면, 요청을 가로챈 후 사용자를 인증하고, 인증된 사용자가 적절한 권한을 지니고 있는 확인한다. 웹 요청은 filterChainProxy를 통해 여러개의 Security Filter가 실행되는데, 그 중 하나인 AnonymousAuthenticationFilter에 대해서 정리해보았다. AnonymousAuthenticationFilter란? 이름으로 역할을 유추해보면 접속한 사용자가 인증이 되어있지 않은 사용자일 때 어떤 행동을 취할것인지를 설정해주는 필터인 것 같다. AnonymousAuthenticationFilter는 이름에서 유추되는 역할을 하는 필터가 맞다. 현재 사용자가 인증을 받지 않았으면 익명 사용자라고 판단해서 익명 사용자용 토큰을 만들어서.. 이전 1 2 3 4 5 6 7 8 9 다음