Spring/Spring Security 6

OAuth 개념

OAuth Open Authorization : 인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹사이트 들이 자신들의 정보에 대해 웹사이트나 어플에 정급 권한을 부여하는 공통적인 수단. 한마디로 한 사이트에서 공유를 시작하면 다른 곳에서 따로 인증을 안받아도 된다는 소리임 페이스북 - 인스타 느낌이라고 생각하면 편할듯 OAuth vs OpenID OAuth : 사용자가 누구인지 인증하는것이 아닌, 요청이 권한이 있는지를 확인하는 인가 프로토콜 OpenID : 사용자가 누구인지 인증하는것 용어 사용자 (user) : 서비스 제공자와 소비자를 사용하는 계정을 가지고 있는 개인 소비자 (consumer) : Open API 를 이용하여 개발된 OAuth 를 사용하여 서비스 제공자에게 접근하는 웹사이트 또는 ..

Security 권한처리하기

시작하기 전에 전에 만든걸로 회원 가입을 해주자 manaer admin 현재 권한은 전부 ROLE_USER ! 해당 권한의 페이지로 잘 들어가지는지 확인을 위해 db에서 직접 권한을 수정해주자 가입시에 권한은 따로 만들면 된다 UPDATE user SET role = 'ROLE_MANAGER' WHERE id = 2; UPDATE user SET role = 'ROLE_ADMIN' WHERE id = 3; id는 해당 데이터에 맞게 넣어주면 된다. 그후 manager 로 로그인 후 /manager 을 가보면 페이지를 만들지 않아서 그렇지 밑에 type 과 status 를 보면 제대로 접속이 된걸 확인 할 수 있다 하지만 admin 을 가보면 어떨까 당연히 권한이 없어서 안됨 SecurityConfig p..

security 로 간단한 회원가입과 비밀번호 암호화

Spring boot template 종속성 Srping Boot DevTools Lombok Spring Data JPA mariaDB Driver Spring Security Mustache Spring Web 간단하게 웹에서 회원가입 (비밀번호 암호화) , 페이지 인증처리, JPA 테이블 생성, bean 으로 Ioc 설정을 해보자 완성본을 올리는거라 순서는 안맞음 indexController package com.example.security.controller; import com.example.security.model.User; import com.example.security.repository.UserRepository; import org.springframework.beans.facto..

CORS (Cross-Origin Resource Sharing) 설정

이렇게 서버간의 통신을 할때 정책상으로 해당서버에 접근을 못하게 차단을 해버리는 일이 발생한다. 그럴때, 해결법. 1. dispatcher-servlet 에 해당 설정을 한다. Java class를 만드는 방법도 있고 따로 xml 파일을 만들어서 import 시키는 경우도 있는거 같은데 걍 간단하게 dispatcher-servlet에 이거만 넣자. 이거만 넣어주면 끝이다 ㅇㅇ.ㄹㅇㅋㅋ 근데 이러면 안됨 세부설정도 해줘야한다. mvc 설정이 안되있다면 추가해주자 (여기서 mvc만 긁어가면 된다.) 2. @CrossOrigin 어노테이션을 장착 여기서는 @CrossOrigin 어노테이션을 장착하겠따. 매우 간단히 빨간 박스자리에 넣기만 해도 된다. class 전체를 지정하겠다. 라면 class 위치 컨트롤러..