우선 내 응용 프로그램은 봄 부팅 및 보안을 사용하여 빌드됩니다.ant matcher와 메소드 레벨 보안을 병행하여 스프링 레스트 컨트롤러에 대한 액세스를 보안 및 허용 하시겠습니까?
그래서 몇 가지 나머지 컨트롤러 (리소스)가 있습니다. 하나의 컨트롤러는 다른 종류의 데이터를 가져 오거나 게시하는 여러 가지 방법을 제공합니다. 하지만 일부 방법은 공개해야하고 다른 방법은 인증이 필요한 경우가 있습니다.
예를 들어:
- GET/API를/개체/방법 항목 <이 - 필요 인증
- GET/API/목적/방법 2 < - 공공
- POST/API/객체 /의 Method3 < - 인증을 요구
- POST/API/객체/method4 < - 공공
이 리소스를 보호하는 가장 좋은 방법은 무엇입니까? AntMatcher와 url을/api/object/** 패턴으로 보호 할 수 없습니다. 왜냐하면 대중적인 방법이 또한 확보 될 것이기 때문입니다. 또한 요청 유형 (GET, POST)으로 보호 할 수 없습니다.
방금 방법 수준 보안 (예 : @Secured 등)을 사용하고 있다고 생각하는 옵션이 하나 있습니다. 이것은 많은 메소드에 주석을 달 필요가 있음을 의미합니다.
마음에 오는 또 다른 생각은 리소스를 2 부분으로 나누는 것입니다. 작성 예를 들어
- ObjectResource.java
- ObjectResourcePublic.java 기본 URL은/API/공공/및 제 2 단지/API를/ 그런 다음 나는이에 대한 antMatcher을 사용할 수있는 것
한 컨트롤러 URL.
모든 경로를 개별적으로 또는 모든 방법으로 개별적으로 보호하는 유일한 방법은 무엇입니까? 이러한 종류의 부분 보안 보안을 수행해야하는 다른 옵션은 무엇입니까?