2016-10-19 3 views
0

Play 2.5.x에서 구현중인 RESTful 서비스가 있는데, 다이제스트로 인증을 구현하는 기존 서버를 대체해야합니다. 누구든지 Play에서 이것을 구현하는 방법에 대한 자습서 나 예제가 있습니까?Play Framework 2.x에서 다이제스트 인증 구현

POST /tui/testing/v1/ HTTP/1.1 
Host: dev01.funkyhost.org 
Authorization: Digest username="testing", realm="SomeFunkyRealm", nonce="7VKfAjI/BQA=5a86a2b75bb70c9aa0723b8eaed002d919bd3039", 
uri="/tui/testing/v1/", cnonce="MWE4OThmYTE2NTFkZTg2YjYyYzhhMTA1OWVhMzIxODU=", nc=00000001, qop=auth, response="722260be15837dead193763511604850", algorithm="MD5" 
User-Agent: curl/7.43.0 
Accept: */* 
Content-Length: 117938 
Expect: 100-continue 
.... 
: 같은 회신합니다

HTTP/1.1 401 Unauthorized 
WWW-Authenticate: Digest realm="SomeFunkyRealm", nonce="ST8RrC0/BQA=9f0890ed9f1603989a4526ce2d27f4415fef88c6", algorithm=MD5, qop="auth" 

와 클라이언트 :

POST /tui/testing/v1/ HTTP/1.1 
Host: dev01.funkyhost.org 
User-Agent: curl/7.43.0 
Accept: */* 
Content-Length: 0 

서버와 요청에 응답 할 수있다 :

는 기본적으로 클라이언트는 무언가 같이 말한다

미리 감사드립니다!

답변

0

Alexander의 저서 Chapter 2을 참조하십시오. 그는 프레임 워크의 꽤 오래된 버전 임에도 불구하고 이것을 수행하기위한 작업 응용 프로그램을 제공합니다.

당신이 사용하고있는 버전에 따라, 수입품을 가지고 놀아야 할 필요가 있습니다 (말장난을 용서해주십시오). 왜냐하면 그가 이것을 작성한 이후 약간 옮겨서 리팩토링을 조금 할 것이기 때문입니다.

+0

답장을 보내 주셔서 감사합니다. 나는 Play 1의 예를 보았지만 Play 2는 그렇게 근본적으로 다른 것들을 수행합니다. 나는 그것을 번역 할 수 없었습니다. Play에 대한 프록시 요청에 Apache를 사용하고 대신 Apache 쪽에서 다이제스트 인증을 사용하도록 설정했습니다. 차라리 Play에서 네이티브 방식으로 작업하게 할 것이지만 지금은이 해결 방법을 받아 들일 필요가 있습니다. – Uberbug