Spring

    Spring Security - Method Security로 사용자 별 데이터 권한 확인하기

    @PreAuthorize, @PostAuthorizePre/PostAuthorize 어노테이션을 이용해서 현재 로그인한 유저가 data를 생성한 주체(data owner)인지, ADMIN 권한을 가진 사용자인지 검사해보려고 합니다.@PreAuthorize, @PostAuthorize는 SpEL(Spring Expression Language)을 사용해서 권한 검사를 지원하는 어노테이션입니다.어노테이션을 메소드에 붙이면 메소드의 시작, 끝 시점에 주어진 조건식(SpEL)을 기반으로 권한을 검사합니다.어노테이션에 매개변수로 담는 문자열에서 SpEL을 지원하기 때문에 @Secured 보다 세밀한 권한 검사가 가능합니다.  Request level 권한 인증 VS Method level 권한 인증글을 읽게 되신..

    Spring boot 프로젝트에 Sentry 연결하기

    Sentry는 에러 추적, 성능 모니터링 플랫폼입니다.이번에 작업한 프로젝트를 원격 서버에 배포하고 난 뒤 에러가 발생했습니다. nohup 명령어를 사용하고 있어서 nohup.out 파일에 서비스 로그가 찍히고 있었는데, 보기에 매우 불편해서 Sentry를 통해 에러를 잡고 디버깅을 해보려 사용하게 됐습니다.  Sentry는 애플리케이션 런타임 시에 SDK를 사용해서 데이터를 잡습니다.Sentry가 Spring boot 프로젝트에서 데이터를 잡기 위해서 SDK를 설치해야합니다. 설치 방법이 두가지인데, 그 중에서 gradle plugin으로 추가하는 방법을 선택했습니다. 이 방법을 사용하면 Sentry 플러그인이 Spring boot 프로젝트에 적절한 의존성을 추가해준다고 합니다.plugins { id ..