2012-09-24 2 views
11

몇 가지 웹 서비스를 구현하는 Java 서버 응용 프로그램이 있다고 가정합니다. 또한 응용 프로그램 사용자를 인증 할 수 있다고 가정합니다.Java 응용 프로그램에서 웹 서비스 사용을 제한하는 방법은 무엇입니까?

이제 사용자 당 한도 인 을 서비스 사용에 추가하고 싶습니다. 속도 제한 (초당 요청 수), 최대 요청 크기 등

Java에 "ready-to-use"라이브러리가 있습니까?

+1

정체성 기반 한도를 의미합니까? 예 : 사용자 X가 서비스를 1 분당 100 회만 호출 할 수있는 권한이 있습니까? – home

+0

예, ID 기반 제한을 의미합니다. – Michael

답변

1

당신이 할 수있는 참조하는 아파치 CXF와 인터셉터를 구성하여. 이 page에는 상위 레벨 구성의 예가 있습니다. 이 page에는 요격기에 대한 세부 정보가 있습니다. 유효성 검사를 통해 원하는만큼 멋진 결과를 얻을 수 있습니다. 인증 된 사용자를 얻는 방법을 알지 못합니다.

1

모든 통화가 통과하는 인증/권한 부여 서비스가있는 경우이 사용자 별 제한이 통합 될 수 있습니다. 나는 사용자 정의 코딩없이 할 수있는 프레임 워크를 인식하지 못한다.

이러한 종류의 로직은 서비스 자체 외부에서 구성하는 것이 가장 이상적입니다. 나는 낙타가 많은 요청에 대한 조절을 제공한다는 것을 안다. 자신의 제한 정책을 정의하여 사용자 요청 당 수를 매핑 할 수 있습니다.

1

간단한 인터셉터 클래스를 만들어야합니다. 거기에 onPreExecute() 메서드는 사용자 지정 검사를 넣을 수 있습니다. 나는 이것을 봄과 함께 사용했다.

관련 문제