2012-09-28 12 views
10

No me interesan las muestras de WCF. Las implementaciones de DotNetOpenAuth que encontré también son incomplete o assume WCF. He encontrado Thinkitecture.IdentityServer.45, que es todo menos ligero y no es realmente apropiado para construir en mi nuevo proyecto WebAPI. Incluso encontré el proyecto Oauth2DotNet que casi no tiene información real.Pero en serio ... Ejemplo de implementación WebAPI de ASP.NET que incluye OAuth

Microsoft ha publicado un few Oauth/OpenID proyectos relacionados, pero ni siquiera puedo encontrar la documentación adecuada para estos.

Mi proyecto: Crear un nuevo sitio para proporcionar servicios API de "estilo REST" para aplicaciones móviles autorizadas usando .NET 4.5 y WebAPI de ASP.NET. Dado que estas aplicaciones no necesariamente tienen que actuar en nombre de un usuario, creemos que Oauth de "dos patas" será aceptable porque nos gustaría poder cerrar y denegar el acceso a nuestra API si una aplicación específica se sale de mano.

De todo esto, he pasado una semana tratando de lograr que funcione una implementación básica, pero ni siquiera he podido identificar los distintos tipos de tokens y qué hacen los tokens. Esto realmente no debería ser tan difícil y creo que la falta de información básica sobre los temas involucrados es bastante frustrante. Sí, las especificaciones se publican, pero en ninguna parte están destiladas y listas para su implementación.

Me gustaría que la solución ideal se extienda para integrarse correctamente con el atributo Autenticar de WepAPI, probablemente como filtro de acción/autorización para poder identificar y autenticar la aplicación remota antes de autorizar el acceso a uno o más de mis elegantes REST -ful métodos de API.

¿Dónde está el "comienzo"?

+0

ayuda esto a http://bitoftech.net/2014/07/16/enable-oauth-refresh-tokens-angularjs-app-using-asp-net-web-api-2-owin/ – Bilal

Respuesta

8

Básicamente, HMAC authentication es suficiente para resolver su problema, echa un vistazo aquí:

How to secure an ASP.NET Web API

Y:

Web API creating API keys

+0

¡Perfecto! ¡Gracias! –

+2

Fue la respuesta perfecta en ese momento, pero todavía no he podido implementar oauth en mi WebAPI. Me gustaría volver a abrir esta pregunta para obtener mejores respuestas. Me doy cuenta de que la autenticación HMAC puede ser lo suficientemente buena, pero esta respuesta no contiene una solución real, solo una línea de investigación. –

Cuestiones relacionadas