2012-02-13 4 views
0

이미 Spring MVC 3.0에서 구현 된 애플리케이션이있다. 이제는이 응용 프로그램을 bussiness 논리가 한 응용 프로그램에 남아 있고 웹 계층이 다른 응용 프로그램에 남아 있도록 편안한 응용 프로그램으로 변환하려고합니다. 이제 Spring 3에서 Restful 애플리케이션을 구현하기위한 관련 쿼리 설계하기

이 사용 나머지 내 웹 층은 비즈니스 로직 구현과 관련된 응용 프로그램에 의해 노출되는 서비스에 액세스하는 나머지 클라이언트 역할을 달성하기 위해

내가 혼란 스러워요 요점은 내가 이것에 대한 로그인을 구현하는 방법이다 .

내가 휴식 POST 요청에 서비스 응용 프로그램에 웹 응용 프로그램에서 로그인 자격 증명을 보낸 다음 내 추가 요청

승인 JSESSIONID 역할을 할 ID를 유지 또는 내가 인증해야하며, 모든 요청 권한을 부여해야

또는 이런 종류의 요구 사항을 달성하기 위해 Spring에서 이미 제안한 디자인 패턴이 있습니까?

이 문제에 대한 지식이있는 사람이면 누구든지 도움이 될 수 있습니다.

답변

0

REST 웹 레이어와 '일반'/ 클라이언트 웹 레이어 모두에서 인증을 받아야합니다. 이것을 생각하는 가장 쉬운 방법은 현재 상황에서 REST API의 클라이언트와 서비스 측면을 모두 작성한다는 사실을 무시하는 것입니다. 대신 외부 소스에서 오는 클라이언트 연결을 고려하십시오.

이렇게하면 REST 서비스가 모든 요청을 인증해야한다는 것을 분명히해야합니다. 일반적으로 HTTP 기본 인증을 사용하여 각 요청을 개별적으로 인증합니다. 데이터가 민감하거나 다른 이유로 자격 증명을 보호해야하는 경우 SSL을 사용할 수 있습니다. 이 자격 증명은 응용 프로그램마다 다를 수 있습니다.

클라이언트가 키를 사용하여 자체 인증하지만 클라이언트의 사용자는 API에서 개별적으로 알 수없는 API 키를 갖는 것이 일반적인 패턴입니다. 또한 API에서 이러한 사용자에 대해 알고있는 한 클라이언트 사용자의 자격 증명이 각 요청과 함께 API로 전송되는 일종의 통과 인증을 구현할 수 있습니다. 이 경우 사용자는 클라이언트 (이미 구현 된 웹 응용 프로그램)를 사용하거나 직접 API를 사용할 수 있습니다.