Estoy buscando cualquier hilo de artículo o foro, donde podría encontrar información sobre cómo hacer la autenticación de oauth 2.0. Especialmente tengo la aplicación MVC 3 y WCF Restfull API. Y tengo que llamar a los métodos API desde la aplicación web con el uso de la autenticación del protocolo oauth 2.0. Pero no pude encontrar ninguna información al respecto. Después de buscar en Google, solo veo resultados sobre cómo desarrollar clientes para Facebook, LinkedIn, Google, etc. Cualquier ayuda sería útil. Gracias.Llamar a WCF Métodos resueltos utilizando OAUTH 2.0
Respuesta
Puede echar un vistazo a DotNetOpenAuth. Tiene una biblioteca de cliente que puede instalar fácilmente desde NuGet here. Usando DotNetOpenAuth
, todas las tuberías de OAuth se manejan detrás de escena.
DotNetOpenAuth:
Al instalar el paquete NuGet: https://www.nuget.org/packages/DotNetOpenAuth.Ultimate/4.3.3.13295
puede configurar un cliente de OAuth de esta manera:
var authorizationServerDescription = new AuthorizationServerDescription
{
ProtocolVersion = ProtocolVersion.V20,
TokenEndpoint = new Uri("https://yourUrl/token"),
AuthorizationEndpoint = new Uri("https://yourUrl/authorize")
};
var client = new WebServerClient(authorizationServerDescription, "ClientIdentifier", "ClientSecret");
A continuación, se puede solicitar un IAuthorizationState
así:
// Resource Owner Password Flow
client.ExchangeUserCredentialForToken("userName", "password");
// Client Credential Flow
client.GetClientAccessToken();
El IAuthorizationState contiene el AccessToken
que puede utilizar para autorizar en contra de su Api. Si se proporciona un RefreshToken También puede actualizar su autorización usando:
client.RefreshAuthorization(AuthorizationState);
ThinkTecture:
otra posibilidad es utilizar Thinktecture.IdentityModel
. Si elige utilizar Thinktectures IdentityModel, asegúrese de consultar esta publicación: Introducing OAuth2 Code Flow and Refresh Token Support in Thinktecture IdentityServer. Lo cual no solo explica cómo configurar un Token Server OAuth utilizando Thinktecture, sino también cómo usar el cliente, incluido un ejemplo de código. Por supuesto, puede usar este cliente para validar contra otro servidor OAuth 2.0 siempre que los parámetros se implementen de acuerdo con las especificaciones de OAuth.
OAuth 2.0 Si usted quiere tener una mejor visión del flujo de OAuth 2.0, asegúrese de echa un vistazo a Google de OAuth 2.0 Playground. Creo que mucha gente no sabe que es posible probar tu propio servidor con él. Basta con pulsar el icono 'Configuración' en la parte superior derecha y ajuste:
puntos finales de OAuth: Custom
y ya está bueno para ir.
- 1. Android y OAUTH 2.0
- 2. Asegurar el servicio REST basado en Jersey utilizando oAuth 2.0
- 3. OAuth 2.0 Authorization Header
- 4. Migrando desde YouTube ClientLogin a OAuth 2.0
- 5. Llamar a WCF TimeOut
- 6. OAuth 2.0 Token y Lifetime
- 7. OAuth 2.0 definición de clientes
- 8. ¿Cuál es la diferencia entre OAuth y OAuth 2.0?
- 9. ¿Yahoo y MS son compatibles con Oauth 2.0? y algunas preguntas acerca de OAuth 2.0
- 10. Llamar a .Net 3.5 Servicio WCF desde .NET 2.0 Cliente de servicio web ASMX estándar
- 11. OAuth 2.0. No hay sesión? (Sin estado)
- 12. OAuth 2.0 - ¿Qué hay de nuevo?
- 13. Llamar sincrónicamente a los métodos de contrato de operación WCF en silverlight
- 14. La integración de OAuth 2.0 con CodeIgniter
- 15. Facebook OAuth 2.0 "código" y "token"
- 16. Facebook efectivamente utilizar para apoyar OAuth 2.0?
- 17. Facebook cookie y oauth 2.0 cambios
- 18. Llamar a los métodos DLL desde Javascript
- 19. OAuth 2.0 en C++ (para UNIX)
- 20. Implementación del proveedor OAuth 2.0 usando Coldfusion
- 21. Cómo configurar la seguridad al llamar al Servicio WCF desde .Net 2.0 Cliente
- 22. FB auth.logout se está iniciando después de haber iniciado sesión utilizando "server-side-workflow" (OAuth 2.0)
- 23. llamar a los métodos súper coffeescript
- 24. llamar a los métodos de delegado opcionales
- 25. Android: llamar a métodos personalizados en ContentProvider
- 26. Llamar a métodos php con cadenas
- 27. Implementando la Autenticación OAuth 2.0 para Mi API
- 28. ¿Cómo puedo llamar a un método WCF desde C++ utilizando canalizaciones con nombre?
- 29. OAuth 2.0 necesidad del consumidor clave/consumidor secreto
- 30. cómo llamar a los métodos de extensión utilizando Eval en un control de enlace de datos