본문 바로가기

생각 정리93

2022. 11. 25. § 학습 전(계획) § ▶ 학습 목표는 무엇인가? OAuth 2 OAuth 2이란? OAuth 2의 동작 방식 OAuth 2 인증을 위한 사전 작업 ▶ 이미 알고 있는 내용은 무엇인가? OAuth 2에 관해서는 처음 학습하는 내용들이다. § 학습 후(점검 및 평가) ▶ 새롭게 배운 내용은 무엇인가? OAuth 2는 사용자 정보를 보유하고 있는 신뢰할 만한 써드 파티 애플리케이션(GitHub, Google, Facebook 등)에서 사용자의 인증을 대신 처리해 주고 접근 권한에 대한 토큰을 발급한 뒤 해당 토큰을 이용해 써드 파티 애플리케이션의 서비스를 사용하게 해주는 방식 OAuth 2를 사용하는 애플리케이션 유형 써드 파티 애플리케이션에서 제공하는 API를 직접적으로 사용 추가적인 인증 서비스를 제공하.. 2022. 11. 25.
2022. 11. 24. § 학습 전(계획) § ▶ 학습 목표는 무엇인가? JWT 인증 JWT 자격 증명을 위한 로그인 인증 구현 JWT를 이용한 자격 증명 및 검증 구현 ▶ 이미 알고 있는 내용은 무엇인가? JWT의 기본적인 내용은 어제 학습했고, 오늘은 코드로 구현해서 적용시켜볼 것 같다. § 학습 후(점검 및 평가) ▶ 새롭게 배운 내용은 무엇인가? Spring Security 기반의 애플리케이션에 JWT를 적용하기 위해서는 jjwt나 Java JWT 같은 별도의 라이브러리가 필요 UsernamePasswordAuthenticationFilter를 이용해 JWT 발급 전의 로그인 인증 기능을 구현 직접 Custom Configurer를 구성해 Spring Security의 Configuration을 커스터마이징 가능 Use.. 2022. 11. 24.
2022. 11. 23. § 학습 전(계획) § ▶ 학습 목표는 무엇인가? JWT 인증 JWT(JSON Web Token) JWT의 장점과 단점 JWT의 생성 및 검증 테스트 ▶ 이미 알고 있는 내용은 무엇인가? 처음 배우는 내용들이다. § 학습 후(점검 및 평가) ▶ 새롭게 배운 내용은 무엇인가? https://jaeyoungb.tistory.com/218 ▶ 다른 사람에게 설명할 수 있는가? 토큰 기반의 인증의 장점, JWT에 대해 설명할 수 있다. ▶ 아직 이해되지 않은 내용은 무엇인가? 아직 JWT를 생성하고 검증 테스트하는 부분을 끝마치치 못했다. ▶ 이해되지 않은 내용을 보완하기 위해서 나는 무엇을 할 수 있는가? 못다한 부분을 마저 학습한다. ▶ 오늘 나의 학습 만족도는 어느 별 5개 중 몇 개를 줄 수 있는가? ★.. 2022. 11. 23.
2022. 11. 22. § 학습 전(계획) § ▶ 학습 목표는 무엇인가? Spring Security 권한 부여 처리 흐름 접근 제어 표현식 ▶ 이미 알고 있는 내용은 무엇인가? 처음 학습하는 내용들이다. § 학습 후(점검 및 평가) ▶ 새롭게 배운 내용은 무엇인가? https://jaeyoungb.tistory.com/214 https://jaeyoungb.tistory.com/215 ▶ 다른 사람에게 설명할 수 있는가? 어제는 인증 처리에 관해 학습했는데, 오늘은 인가 처리에 대해 학습했다. 어제와 마찬가지로, 대략적인 흐름은 설명할 수 있을 것 같다. ▶ 아직 이해되지 않은 내용은 무엇인가? 각 컴포넌트의 구체적인 역할에 대해서는 미흡하고, 실제 권한을 부여하는 처리를 코드로 구현하기 위해선 많은 연습이 필요해보인다. ▶.. 2022. 11. 22.
2022. 11. 21. § 학습 전(계획) § ▶ 학습 목표는 무엇인가? Spring Security 인증 처리 흐름 인증 컴포넌트 ▶ 이미 알고 있는 내용은 무엇인가? 모두 처음 학습한다. § 학습 후(점검 및 평가) ▶ 새롭게 배운 내용은 무엇인가? https://jaeyoungb.tistory.com/212 ▶ 다른 사람에게 설명할 수 있는가? 인증 처리 흐름에 대해서 전체적인 느낌은 이해가 가지만, 설명은 아직 어렵다. ▶ 아직 이해되지 않은 내용은 무엇인가? 흐름에서 어떤 컴포넌트들이 있고, 각 컴포넌트들이 어떤 역할을 하는지에 대해 확실히 숙지되지 않았다. ▶ 이해되지 않은 내용을 보완하기 위해서 나는 무엇을 할 수 있는가? 오늘 학습한 내용들을 여러 번 보고 구글링을 통해 이해할 수 있을 것 같다. ▶ 오늘 나의 .. 2022. 11. 21.
2022. 11. 18. § 학습 전(계획) § ▶ 학습 목표는 무엇인가? Spring Security 기본 구조 웹 요청 처리 흐름 Filter와 FilterChain 구현 DelegatingPasswordEncoder ▶ 이미 알고 있는 내용은 무엇인가? 모두 처음 학습하는 내용들이다. § 학습 후(점검 및 평가) ▶ 새롭게 배운 내용은 무엇인가? Spring Security는 직접 보안 코드를 구현하는 것보다 더 검증이 잘 되어있고, 사용하기 편하다. 또, 특정 보안 요구 사항을 만족하기 위한, 커스터마이징이 용이하고, 확장에 유연하다. ▶ 다른 사람에게 설명할 수 있는가? 오늘 학습할 내용들을 아직 다 학습하지 못해서 불가하다. (따로 블로깅을 통해서, 학습한 내용들을 정리할 예정이다) ▶ 아직 이해되지 않은 내용은 무엇.. 2022. 11. 18.
2022. 11. 17. § 학습 전(계획) § ▶ 학습 목표는 무엇인가? 인증 / 보안 HTTPS Hashing Cookie Session 웹 보안 공격 (SQL Injection, CSRF) ▶ 이미 알고 있는 내용은 무엇인가? 모두 처음 배운다. § 학습 후(점검 및 평가) ▶ 새롭게 배운 내용은 무엇인가? HTTPS : HTTP 프로토콜 내용을 암호화한 것 Hashing : 어떠한 문자열에 임의의 연산을 적용하여 다른 문자열로 변환하는 것 Cookie : 어떤 웹사이트에 들어갔을 때, 서버가 일방적으로 클라이언트에 전달하는 작은 데이터 Session : 서버가 client에 유일하고 암호화된 ID를 부여, 중요 데이터는 서버에서 관리 SQL Injection : 데이터베이스에서 임의의 SQL문을 실행할 수 있도록 명령어를.. 2022. 11. 17.
Section 3 회고 Section 3도 끝이 나버렸다. Section을 거듭할수록, Section이 지나가는 시간이 점점 더 빨라지는 것 같다. 우선, Section 3까지 무사히 마친 나에게 너무나도 감사하다😊😊 Section 3에서는 배운 내용은 대략 다음과 같다. Spring MVC API 계층 / 서비스 계층 / 예외 처리 / JDBC 기반 데이터 액세스 계층 / JPA 기반 데이터 액세스 계층 / 트랜잭션 / 테스팅 / API 문서화 / 애플리케이션 빌드, 실행, 배포 정말 어려운 내용들이었고, 모든 내용들을 머릿속에 담기엔 벅찼다. 유닛이 1~3일에 하나씩 끝나버리니, 이전에 배운 내용들을 까먹지 않고, 새로운 내용을 배우는 게 정말 쉽지 않았다. 그래도 어떻게 끝이 났고, 새로운 Section을 맞이할 준비를 .. 2022. 11. 16.
2022. 11. 15. § 학습 전(계획) § ▶ 학습 목표는 무엇인가? Spring MVC - 애플리케이션 빌드 / 실행 / 배포 애플리케이션 빌드 / 실행 / 배포 애플리케이션 빌드 / 실행 / 배포 실습 ▶ 이미 알고 있는 내용은 무엇인가? 모두 잘 모르는 내용들이다. § 학습 후(점검 및 평가) ▶ 새롭게 배운 내용은 무엇인가? 통합 개발 도구(IDE)를 활용하기 어려운 환경에서, Spring Boot - Gradle 기반의 애플리케이션을 빌드하고 실행할 수 있다. Spring에서는 프로파일(Profile) 기능을 이용해서, 빌드 후 생성되는 애플리케이션 실행 파일에 대한 실행 환경을 손쉽게 지정할 수 있다. ▶ 다른 사람에게 설명할 수 있는가? 애플리케이션을 빌드하고 실행하는 과정을 설명할 수 있다. ▶ 아직 이해되지.. 2022. 11. 15.