Tengo un servicio WCF que me gustaría admitir basicHttpBinding y webHttpBinding. Cuando el cliente inicie sesión correctamente, el servidor generará un token para que el cliente pase al servidor en todas las solicitudes posteriores. La pregunta es cómo el cliente puede pasar el token al servidor. No deseo agregar un parámetro adicional en cada método web para contener el token.WCF cómo pasar el token para la autenticación?
15
A
Respuesta
17
Normalmente, la mejor manera de hacer algo como esto es pasar dicha "metainformación" en un encabezado WCF. Puede crear fácilmente un inspector de mensajes para extender WCF (¡en realidad no es tan aterrador y difícil de hacer!) Que inyectaría el token en cada solicitud saliente del cliente, y lo recuperaría del encabezado y lo validaría en el servidor.
Hay una serie de bastante buena entrada en el blog por ahí que muestra cómo crear un mensaje inspector:
- Richard Hallgren WCF postings
- Writing a WCF message inspector
- Automatic Culture Flowing with WCF by using Custom Behaviour
Mira la dos interfaces relevantes para implementar:
- IClientMessageInspector en el lado del cliente, que tiene un mensaje
BeforeSendRequest
yAfterReceiveReply
para implementar - IDispatchMessageInspector en el lado del servidor, que tiene un método
AfterReceiveRequest
yBeforeSendReply
para implementar
Cuestiones relacionadas
- 1. Cómo firmar el token X509 usando WCF
- 2. Cómo usar la autenticación HTTP en el diseño con un token de omniauth opcional como el token de autenticación
- 3. WCF: Servicio de autenticación o seguridad basada en token?
- 4. ¿La mejor estrategia para pasar un token/cookie a un servicio WCF?
- 5. Autenticación WCF
- 6. Identificar token de autenticación
- 7. ¿Cómo configurar la configuración para aceptar el token de autenticación en el encabezado HTTP?
- 8. Mejores prácticas para SessionId/Autenticación Token generation
- 9. WCF: La solicitud de token de seguridad no se pudo cumplir porque la autenticación falló
- 10. WCF y autenticación
- 11. Autenticación basada en tokens en WCF
- 12. persistente de autenticación Token Expira
- 13. ¿Qué es la autenticación basada en token?
- 14. Autenticación de seguridad WCF
- 15. Cómo configuro la autenticación OAuth para WCF REST C# Site
- 16. Autenticación WCF/ASP.NET
- 17. Autenticación extensión WCF
- 18. Wcf Autenticación básica
- 19. autenticación basada en token en php
- 20. API REST Autenticación basada en token
- 21. Autenticación del servidor proxy para el servicio WCF
- 22. Autenticación de token utilizando PHP para dispositivos móviles
- 23. Autenticación WCF SIN SSL
- 24. Almacenamiento de token de autenticación en iOS
- 25. Configuración de la autenticación de formularios WCF
- 26. autenticación rails-api por el token del encabezado
- 27. Al pasar el encabezado de autorización para la solicitud de token oauth
- 28. Autenticación WCF personalizada con System.ServiceModel.ServiceAuthenticationManager?
- 29. Sesión: ¿Cómo generar token de autenticación para el servicio REST? (Jersey)
- 30. Cómo configurar un token de seguridad en WCF?
Gracias, que está trabajando. Esto es exactamente lo que necesitaba. – Kevin
Pasar el token en el encabezado no plantea un problema de seguridad? –
@Learning Sé que es un comentario antiguo, pero debe usar al menos una conexión segura y es una buena idea aplicar algún tipo de encriptación para el token que solo usted y el cliente saben cómo implementar. – Silvermind