본문 바로가기

Kotlin4

스프링 reCAPTCHA v2 사용하기 [Kotlin] 안녕하세요, 스코리아입니다. 오늘은 스프링에서 Google의 reCAPTCHA v2 서비스를 사용하는 방법에 대해서 알아보겠습니다. 언어는 코틀린(Kotlin)으로 진행하겠습니다. 구글 reCAPTCHA 소개 (v2, v3) :: reCAPTCHA v2 :: - "로봇이 아닙니다" 체크 박스로 잘 알려져 있습니다. 이 체크 박스를 통해 구글 리캡챠는 사용자가 로봇인지 인간인지 판별합니다. - 이미지 도전 과제가 존재합니다. 사용자가 의심스러운 경우, 교통수단이나 가로등 등을 식별하도록 요구하는 도전과제를 보여주고, 사용자가 풀면 인간임을 확인합니다. - 다양한 서비스에서 대중적으로 v2가 사용 중입니다. :: reCAPTCHA v3 :: - v2보다 진화된 형태로 알려져 있습니다. - 웹사이트 상호작용 .. 2024. 1. 30.
스프링 Data JPA: Auditing 적용 방법 [Kotlin] 안녕하세요, 스코리아입니다. 오늘은 스프링 Data JPA의 Auditing을 적용하는 방법에 대해서 알아보겠습니다. 언어는 코틀린(Kotlin)으로 진행하겠습니다. JPA Auditing 소개 어원적인 "Auditing"은 감사, 감사 추적과 관련된 용어로, 어떤 일련의 이벤트나 활동에 대한 기록, 모니터링, 추적을 수행하는 것을 의미합니다. "JPA Auditing"은 Java Persistence API에서 제공하는 기능 중 하나로, 엔터티의 변경 이력을 추적하고 관리하는 데 사용됩니다. 주로 데이터베이스에서 특정 테이블의 Record가 언제 생성되었고, 언제 마지막으로 수정되었는지를 추적하는 데 활용됩니다. 이를 통해 데이터 변경 내역을 추적하고, 시간에 따른 엔터티의 상태를 확인할 수 있습니다 .. 2024. 1. 13.
스프링 API 예외처리 방법 : @RestControllerAdvice [Kotlin] 안녕하세요, 스코리아입니다. 오늘은 스프링의 @RestControllerAdvice 어노테이션을 이용해서 API 예외처리 하는 방법에 대해서 알아보겠습니다. 언어는 코틀린(Kotlin)으로 진행하겠습니다. @RestControllerAdvice 예외처리가 필요한 이유? 만약 비즈니스 계층에서 팀원들이 각각 예외처리를 하고 있는 프로젝트라면, 발생시키는 에러 메시지, 규격, 규율 등이 달라 응답이 정규화되지 않을 것입니다. 하지만 이러한 예외처리 로직을 비즈니스 로직과 분리하여 @RestControllerAdvice 어노테이션이 적힌 클래스 한 곳에서 예외처리를 담당한다면, 일관된 형식의 응답을 제공할 수 있어, 코드의 가독성과 유지 보수성을 높이는데 도움이 될 것입니다. 즉 요약하자면, @RestCont.. 2024. 1. 8.
(2) JWT Access, Refresh 토큰 + Redis : 스프링 코드 구현 [Kotlin] 안녕하세요, 스코리아입니다. 오늘은 저번 시간에 이어서 스프링에서 JWT(Access, Refresh 토큰)을 Redis와 함께 사용하는 코드를 구현해 보겠습니다. 언어는 코틀린(Kotlin)으로 진행하겠습니다. 이전 포스팅에서 JWT가 무엇이고 Refresh 토큰을 사용해야 하는 이유, Refresh 토큰의 보안문제와 해결방안, Redis 활용 장점에 대해서 설명드렸으니, 꼭 읽어보시기 바랍니다! [이전 내용] (1) JWT Access, Refresh 토큰 + Redis : 소개 및 보안 : 바로가기 프로젝트 구현 흐름 스프링으로 코드를 구현하기 전에 어떤 식으로 구현해 볼지 Flow에 대해서 먼저 설명해 드리겠습니다. Access 토큰의 유효기간은 30분, Refresh 토큰의 유효기간은 1달(30.. 2023. 12. 30.