Silverlight WCF autenticación (Ayuda al pasar de WPF a Silverlight)
-
23-08-2019 - |
Pregunta
Tengo una aplicación WPF de trabajo existente en la que he aplicado mi propia autenticación personalizada a un servicio WCF backend. Cuando tengo acceso a este servicio de WPF, la configuración ServiceProxy de la siguiente manera:
proxy.ClientCredentials.UserName.UserName = "test";
proxy.ClientCredentials.UserName.Password = "pass";
y porque estoy usando HTTPS el uid / pwd es seguro.
En Silverlight 2 no hay .ClientCredentials objeto en el proxy. La única opción que he encontrado es agregar dos parámetros de cadena a todos los métodos de WCF expuesto para UID / PCD. Eso suena como una locura para mí, tiene que haber una mejor manera, no?
Solución
Desafortunadamente Silverlight 2 sólo es compatible con basicHttpBinding lo que significa que no soporta ClientCredentials.
Las 2 opciones que tiene son: 1. Como usted ha mencionado que pasa el nombre de usuario y pasar con cada solicitud. 2. asp.net utilizando la autenticación y habilitar el modo de compatibilidad asp.net en sus servicios.
- N.B TransportSecurityWithMessageCredentials menciono a continuación no parecen hacer el corte para SL3 por lo que las únicas opciones son los 2 anteriores, tanto para SL2 y SL3
Silverlight 3 mejora en esta historia con TransportSecurityWithMessageCredentials y se puede encontrar más información sobre esto en el blog Silverlight Servicios Web Equipo (uniría a ella, pero al parecer, ya que soy un nuevo usuario no estoy animales0
HTH