저지 서비스가있는 스프링 웹 응용 프로그램이 있습니다. 그러나 휴식은 봄 보안을 통해 확보되며 로그인 프로세스는 단위 테스트 코드로 수행하기가 매우 어렵습니다. 나는 전체 봄 보안이 해제 된 휴식 서비스를 테스트하고 싶다. 심지어 가능할까요?스프링 보안이 적용된 스프링 응용 프로그램에서 REST를 테스트하는 방법
0
A
답변
0
주석 기반 웹 서비스의 장점 중 하나는 쉽게 단위 테스트 할 수 있다는 것입니다. 보안을 위해 봄의 서블릿 필터를 사용하는 경우
class WebServiceEndpoint {
@Path("/foo/{fooId}")
@POST
@Produces({ MediaType.APPLICATION_XML })
public Response doFoo(@PathParam("fooId") Integer fooId) {
/// ... web service endpoint implementation
}
}
는 다음 doFoo
방법에 대한 보안 관련 코드가 안된다, 그래서 당신은 단지 방법을 새로운 WebServiceEndpoint
클래스를 생성하고 호출 할 수 있습니다. 이것이 보안을 무력화하는 한 가지 방법입니다.
로그인 프로세스가 '어렵다'고 말하면 어떻게됩니까? 한 번 로그인하면 다른 단위 테스트에서 동일한 코드를 다시 사용할 수 있습니다 (예 : @Before
방법).
0
그냥 pojo로 테스트하십시오. 무엇이든 통과하고, 무엇이든 돌아오고, 앱 컨텍스트를 전혀로드하지 않습니다. 이는 통합 테스트 일 것입니다.
로드 된 프레임 워크없이 기능을 쉽게 테스트 할 수있는 기능은 스프링의 주요 장점 중 하나입니다.
0
"어렵습니다"라고 말하지 않으므로 REST 서비스에서 테스트 할 Java 메소드 (인증 결과가 필요한)가 있다고 가정합니다. Spring은 인증 결과를 조롱하는 유틸리티를 가지고있다. 예를 들어, 당신은 A @Before
설정 방법에서 다음을 수행 할 수
Object principal = null; // fix this
Object credentials = null; // fix this
Authentication auth = new org.springframework.security.authentication.TestingAuthenticationToken(principal, credentials);
SecurityContextHolder.getContext().setAuthentication(auth);
그러나 다시, 당신은 당신이 실제로 해결하려는 문제가 무엇 말했다하지 않은를 ...
관련 문제
- 1. 스프링 보안이 적용된 Apache/mod_jk
- 2. GWT 및 스프링 보안이 적용된 조건부 UI?
- 3. 스프링 메소드 보안이 작동하지 않습니다.
- 4. 스프링 3 보안이 작동하지 않습니다.
- 5. 웹 응용 프로그램에서 스프링 컨테이너로드하기
- 6. 스프링 보안이 자동 프록시에 적합하지 않습니다.
- 7. 스프링 MVC 예외 핸들러 내 스프링 MVC 응용 프로그램에서 @RequestBody
- 8. 스프링 보안이 적용된로드 밸런서에 https 오프로드
- 9. 스프링 보안이 로그인 호출을 가로 채지 않습니다.
- 10. Windows 7에서 스프링 보안이 작동하지 않습니다.
- 11. 스프링 보안이 사전/사후 주석을 처리하지 않습니다.
- 12. 스프링 보안 : setUserPrincipal을 수동으로 설정합니다.
- 13. 두 번째 응용 프로그램에서 스프링 보안에 액세스하십시오.
- 14. 웹 응용 프로그램에서 초기화 된 스프링 빈
- 15. 스프링 + SQLite 멀티 스레드 응용 프로그램에서
- 16. BasicDataSource를 사용하여 스프링 응용 프로그램에서 연결 풀을 만드는 방법
- 17. 프로그래밍 방식으로 스프링 보안 비활성화
- 18. 스프링 로프 - 스프링 서핑 설치 방법
- 19. 스프링 설정 스프링 이메일
- 20. 스프링 보안이 persistent_logins 테이블의 기본 SQL을 덮어 씁니다.
- 21. Spring 보안이 적용된 Struts 메뉴. 어떤 장점? 자습서? 예?
- 22. 스프링
- 23. 스프링 보안 - 전역 메소드 포인트 컷을 사용한 보안이 작동하지 않습니다.
- 24. 스프링 배치 관리와 스프링 배치 관리 통합
- 25. 스프링 3.0 보안이 주석 기반 컨트롤러와 함께 작동하지 않습니다.
- 26. 스프링 주석으로 연결하는 방법
- 27. 스프링 MVC 3의 콘텐츠 협상이 내 스프링 MVC 3 응용 프로그램에서 내용 협상을 구성한
- 28. 스프링 보안이 작동하지 않습니다. 내가 도대체 뭘 잘못하고있는 겁니까?
- 29. Implment Jersey 및 스프링 보안이 포함 된 RESTful 웹 서비스
- 30. 스프링 보안이 이러한 요구에 부응 할 수 있습니까?