스프링 씨큐리티 권한으로 컨트롤러 접근을 체크하긴 했지만 별도의 권한 체크가 필요 AOP를 사용하기로 했습니다.

* 조건 *
1. 씨큐리티 권한이 아닌 다른 조건으로 권한 체크 필요
2. 컨트롤러 중 일부 컨트롤러에만 적용 필요
3. 컨트롤러에 어노테이션으로 해당 컨트롤로 권한을 체크 하기로.

1. 어노테이션 인터페이스 생성

package chsoft.frontend.baseprj.framework.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
 * 사용자 체크용 ApiController Annotation
 * 	- OO고객인 경우 확인하여 접근 금지.
 * 	- 사용예1) @DemoUserCheck
 *             	- "OO고객은 사용하실 수 없는 기능입니다." 기본 메시지 출력
 *  - 사용예2) @DemoUserCheck(message="메시지")
 *  			- message 내용 출력
 */
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE, ElementType.FIELD, ElementType.METHOD})
public @interface DemoUserCheck {
	String message() default "OO고객은 사용하실 수 없는 기능입니다.";
}

2.  어노테이션 체크 AOP

/**
 * DemoUserCheck 어노테이션 체크 AOP
 *	- OO회원은 접근 할 수 없도록 체크 합니다.
 */
@Aspect
@Component
public class DemoUserCheckAspect {
	protected final Logger logger = LoggerFactory.getLogger(this.getClass());
	
	@Autowired CommonService commonService;
	
	@Before("@annotation(chsoft.frontend.baseprj.framework.annotation.DemoUserCheck)")
	public void demoUserCheckAnnotation(JoinPoint joinPoint) {
		
		// 어노테이션 정보 획득
		MethodSignature methodSignature = (MethodSignature) joinPoint.getSignature();
		DemoUserCheck demoUserCheck = methodSignature.getMethod().getAnnotation(DemoUserCheck.class);
		
		if( demoUserCheck != null ) {
        	if (1==1) {
            	//강제에러..
				throw new chsoft403ForbiddenException("권한이 없습니다.");
            }
		}	
		
	}
}

 

3. 컨트롤러 적용

	/** 등록 */
	@DemoUserCheck
	@PreAuthorize("hasRole('ㅋㅋㅋㅋㅋ')")
	@PostMapping(value="/등록해보자")
	public UserVO insertData .....

 

 

 

반응형

Git으로 작업하는데 수정한게 없는데 일부 사람은 공백이 자동 제거되어 GIt에서 변경사항이 있다고 계속 뜨는경우

본인은 이클립스 마켓에서 AnyEdit Tools 설치하여 사용중  AnyEdit Tools을 설치하면  아래와 같은 옵션이 기본 체크 되어 있음.(공백 자동 삭제)

체크를 빼면 공백 자동 삭제 기능 작동하지 않음

 

반응형

집에 노트북이 2대 있으나 한대는 i3 3세대에 17" 1366x768 해상도라 느리고 화면이 불편하고.
또 한대는 갤럭시북 Flex 13인치인데 이쁘고 가벼워 좋지만 화면이 작고 들고 다니는 경우가 많아.

i3 3세대를 대체할 노트북을 하나 더 살까 고민하고 있었는데.

지마켓 빅스마일데이가 시작 되어서. 노트북을 보기 시작 했습니다.

인텔계열은 12세대 AMD 계열은 5000 시리즈를 기준으로 살펴 봤고.
모니터는 15.6인치 이상.... PD충전 가능~ , 지문인식, 일반키보드 사이즈...

그중 눈에 들어온게 ASUS 비보북S 16X 
그림은 59만원 나와 있지만 카드 및 쿠폰에 따라 가격은 60만원대 이상도 자주 나와요.
적당한 크기에 적당한 가격 그리고 U 시리즈가 아닌 H 시리드 CPU
메모리가 좀 작아서 늘려야 겠지만 제각 생각하던 딱 적당한 제품이라 생각하여 구매 했습니다.

구매하고 빠르게 배송 왔구요. 

박스 깔끔합니다.

펼치니 이런모습~ ^^

당연히 저렴하다보니 프리도스
윈도우 라이센스는 따로 있어서 윈도우11을 설치 했습니다.

그리고 밝기는 300nit라 괜찮았지만 sRGB가 낮아서 걱정 했는데.
오!~ 이정도면 쓸만한데... 거슬리는 느낌이 없었습니다.
뭐 제가 화면에 민감하지 않아서 일수도 있지만. 전 괜찮았습니다.

그리고 키보드 키감이 노트북치고 꽤 괜찮아 좋았습니다.

아직 오래 사용해 보지 않아...
여기까지 느낀점입니다. ^^

반응형

'리뷰(후기)' 카테고리의 다른 글

USB-C HUB를 사다  (0) 2018.09.09
TPMS 를 달아보자~~  (0) 2018.09.09
샤오미 스마트 선풍기 구매  (0) 2017.06.28
PC를 조립하다. i5-6500  (0) 2016.12.28
아이스파이프 옴니 LED전구 9W 전구 플리커프리  (0) 2016.12.28

+ Recent posts