У меня есть служба RESTful, которую я реализую в Play 2.5.x, которая должна заменить существующий сервер, который реализует аутентификацию с помощью Digest. У кого-нибудь есть учебник или пример того, как реализовать это с Play?Реализация аутентификации дайджеста в Play Framework 2.x
В основном клиент говорит что-то вроде:
POST /tui/testing/v1/ HTTP/1.1
Host: dev01.funkyhost.org
User-Agent: curl/7.43.0
Accept: */*
Content-Length: 0
сервер должен ответить на запрос с:
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
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
....
Спасибо заранее!
Спасибо за ответ. Я видел этот пример в Play 1, но Play 2 делает вещи настолько радикально разными, что я не смог их перевести. Я закончил использование Apache для проксирования запросов к Play и включил проверку дайджеста на стороне Apache. Я предпочел бы, чтобы он работал изначально в Play, но мне просто нужно принять это обходное решение. – Uberbug