목록스파르타 코딩 클럽 | 자바 심화 과정 (50)
LUMI_dev

카카오계정 accounts.kakao.com http://localhost:8080/api/user/kakao/callback 만약 카카오계정(이메일) 상태가 권한 없음으로 뜨면, 개인정보 보호를 위해 비즈니스 인증한 서비스에만 동의항목 제공되도록 변경되었으므로 비즈앱 전환 후, 비즈니스인증 받으시고 개인정보 동의 설정 권한 요청이 필요하다는 것 비즈니스 > 개인 개발자 비즈 앱 전환 그럼 이제 사용 가능 닉네임 이메일 login.html 카카오로 로그인하기해당 코드의 { REST_API_KEY }에 우리의 REST_API_KEY를 넣어주기 REST_API_KEY 찾는 방법 카카오 서버에서 보내주는 인가 코드를 처리하는 컨트롤러가 ..
회원가입 예외처리 SignupRequestDto package com.sparta.springauth.dto;import jakarta.validation.constraints.Email;import jakarta.validation.constraints.NotBlank;import lombok.Getter;import lombok.Setter;@Getter@Setterpublic class SignupRequestDto { @NotBlank private String username; @NotBlank private String password; @Email @NotBlank private String email; private boolean admin = f..

Java는 null 값에 대한 접근에 대해 NullPointerException 오류가 발행하기 때문에 이러한 부분을 예방Spring은 null 확인 뿐 아니라 문자의 길이 측정과 같은 다른 검증 과정도 쉽게 처리할 수 있도록 Bean Validation 제공 Bean Validation어노테이션내용@NotNullnull 불가@NotEmptynull, “” 불가@NotBlanknull, “”. “ “ 불가@Size문자 길이 측정@Max최대값@Min최소값@Positive양수@Negative음수@EmailE-mail 형식@Pattern정규 표현식 프로젝트 설정 build.gradle에 추가implementation 'org.springframework.boot:spring-boot-starter-valid..

API 접근 권한 제어 이해'일반 사용자'는 관리자 페이지에 접속이 인가되지 않아야 함 1. Spring Security에 "권한 (Authority)" 설정방법 회원 상세정보 (UserDetailsImpl) 통해 "권한 (Authority)" 설정 가능권한을 1개 이상 설정 가능 "권한 이름" 규칙 → "ROLE_" 로 시작해야 함 예) "ADMIN" 권한 부여 → "ROLE_ADMIN" / "USER" 권한 부여 → "ROLE_USER" public enum UserRoleEnum { USER(Authority.USER), // 사용자 권한 ADMIN(Authority.ADMIN); // 관리자 권한 private final String authority; UserR..

로그인 처리 과정 이해 스프링 시큐리티 사용 전 스프링 시큐리티 사용 후 Client의 요청은 모두 Spring Security를 거침Spring Security 역할인증/인가 성공 시 : Controller 로 Client 요청 전달 ( Client 요청 + 사용자 정보 (UserDetails))실패 시: Controller 로 Client 요청 전달되지 않음 (Client 에게 Error Response 보냄)로그인 처리 과정 Client로그인 시도로그인 시도할 username, password 정보 → HTTP body 로 전달 (POST 요청)로그인 시도 URL 은 WebSecurityConfig 클래스에서 변경 가능"POST /api/user/login" 로 설정하는 법 @Beanpublic S..

'Spring Security' 프레임워크는 Spring 서버에 필요한 인증 및 인가를 위해 많은 기능을 제공해 줌 build.gradle > 'Spring Security' 프레임워크 추가// Securityimplementation 'org.springframework.boot:spring-boot-starter-security' SpringAuthApplication 'Spring Security' 활성화 Spring Security 제외 해제@SpringBootApplicationpublic class SpringAuthApplication { public static void main(String[] args) { SpringApplication.run(SpringAuthApplicatio..