I created an OWS config for login/authentication that log-in via dnn (by ows userinfo object)
and create a token (with a duration/policy, in db table) and a model of OWS config that validate token (via goto configuration)
So when I have to create a new REST WS I simply create a dnn page, drop a ows module with a copy of this configuration and then customize the logic.
for example :
(page with login ows module that response a valid token for X seconds/minutes )
or post parameters
I used XML to retrieve data and response.contenttype to application/xml to stream the response.
The problem I had is that the POST parameters is only in application/x-www-form-urlencoded
so I can read some like :
but not directly stream in XML or JSON
Hope it helps