프로젝트에 권한 최큉!

반응형
반응형

지금 현재 프로젝트는 MSA로 되어 있기 때문에 모놀로식 프로젝트때 사용했던 스프링 시큐리티 방식을 사용하지 못한다.
만약에 사용을 하려면 스프링 시큐리티를 각 도메인마다 사용을 해야하는데 그렇게 되면 예상치 못한 이슈가 발생할지도 모르기때문에 
도메인마다 시큐리티 사용하는것을 하지 않았다.
그러다 보니 권한 체킹하는것이 쉽지가 않았다. 모노로식에서는 어노테이션 하나만 넣으면 되는것이
사용하지 못하기 때문이었다.
그렇다면 이것을 어떻게 해결하면 좋을까?
해결할 수 있는 방안은 총 4가지로 필터, 인터셉터, AOP, 각 각 서비스마다 사용하는 방법이었다.
그중 내가 선택한것은 AOP방식이었다. 
일단 필터가 동작하는 부분은 서블릿 필터이전에 동작을 한다. 그렇다는건 컨트롤러가 들어오기전에 그것을 체킹해야된다는 뜻인데
사실상 말이 안된다고 생각했고
인터셉터도 같은 이유로 사용하지 않았다.

참고로 인터센터는 디스페치서블릿 이전에 동작을 하며 스프링 기술이라고 한다.

그러면 남은 방법은 2가지로 AOP와 각 서비스마다 사용하는 방법이다.
근데 생각해보면 각 서비스 마다 사용하는 방식은 중복코드가 계속나오게 될거라 생각한다.

물론 생각만큼 많이는 안나오겠지만 유연성이 떨어진다고 생각해서 이또한 사용하지 않았다.
그럼 남은 방법은 AOP방식이다. AOP는 다른 방법들과 달리 메소드 전후에 동작을 시킬 수가 있다.
나는 어노테이션을 만들어서 그어노테이션이 동작할때 사용하기로 하였다.
동작 방식은 3가지 (서비스요거 빼고)가 보여지는 모습은 비슷하다.
AOP를 사용하는 이유가 공통적인 부분을 여러번 사용하지 않는다고 생각하면 좋을거 같다.

반응형

'국비지원 (스파르타)' 카테고리의 다른 글

댓글

Designed by JB FACTORY