본문 바로가기

로그인3

리팩터링 「Authentication(인증)」 태어나서 처음 회사에 지원했다. 서류를 여러 군데 넣었다. 벌써 서류 탈락만 3번째이다. 서류 탈락이 이런 기분이구나...ㅎㅎ 회사 기준에 부합하지 않는 내 실력과 결과물 탓이지 뭐. 더 열심히 다듬어야겠다. 서류를 다듬다가 인증과 인가 구현 중 이슈를 작성했던 부분이 눈에 띄었다. 인증과 인가... 음... 인가는 애노테이션을 이용해 인터셉터로 구현한 명확한 근거가 있었다. 인증은 좀 애매했다. JWT 토큰을 인증하는 부분은 굳이 인터셉터까지 도달할 필요가 없다. 그래서 인증 작업을 인터셉터에서 필터로 리팩토링을 진행했다. 필터(Filter)란? HTTP 요청과 응답을 거른 뒤 정제할 수 있는 기능이다. Servlet Container 단에서 동작한다. 스프링 범위 밖에서 처리된다. Dispathcer.. 2022. 7. 11.
2022.05.20 《스프링 부트 권한 처리》 스프링 부트 프로젝트 중이다. jwt를 이용한 인증은 다 끝났고 인가 작업만 남았다. 대부분 스프링 서큐리티를 사용해서 권한 처리를 하는듯하다. 나는 일단 서큐리티를 사용하지 않고 짜고 있기 때문에 고민을 좀 많이 해봤다. 결론을 내리자면 인터셉터를 이용하기로 결심했다. 관리자인지 회원인지 인증이 필요한 작업이든지 중복되는 로직이 너무 많아지므로 이것은 인터셉터에서 컨트롤러로 넘어가기 전에 인가 작업을 해줘야 하는 것이 주된 이유다. 한번 해보자~ => 전반적인 계획 작성 중간 정리 혼자 프로젝트를 해서 인지 속도가 너무 나질 않는다. 생각을 해보았다. 어느 한 기능이든 유지보수가 용이하게 설계하기 때문이라는 생각이 들었다. 가장 시간을 많이 쏟은 부분은 Restful 한 설계 방식과 인증 인가 부분이다.. 2022. 5. 20.
2022.05.16 「리팩토링」 프로젝트를 진행 중이다. 제대로 신경 써서 하다 보니 너무 오래 걸리는 것 같다. 또 제대로 짰다고 생각한 코드도 리팩터링 할 영역 투성이다. 이러면서 실력이 느는 거겠지..? 진짜 제대로 된 프로젝트 한번 만들어보자 리팩토링 목록 불변 객체 이슈 => setter를 허용한 객체 문제 : 불변성을 띄질 못한다. 해결 : loginDTO 객체는 값을 전달하는게 목적이므로 확실하게 불변성을 지녀야 한다. 따라서 불변객체로 다시 만들자 public class UserLoginDTO { private final String userId; private final String userPw; public UserLoginDTO(String userId, String userPw) { this.userId = use.. 2022. 5. 16.
반응형