Pregunta

Me gustaría añadir autenticación simple a los servicios de datos, por ahora sólo para restringir el acceso a determinadas aplicaciones de tokens sencilla.

No necesito autenticación de dominio o las formas de autenticación.

He leído mucho acerca de la autenticación aquí:

http: // franssenden.wordpress.com/2010/06/14/custom-security-odata-service-wcf-data-services/

http://mtaulty.com/CommunityServer /blogs/mike_taultys_blog/archive/2008/06/03/10482.aspx

http://mtaulty.com/CommunityServer /blogs/mike_taultys_blog/archive/2008/01/15/10119.aspx

http://mtaulty.com/CommunityServer /blogs/mike_taultys_blog/archive/2008/01/10/10100.aspx

Por desgracia, todo exige un Muuuuuuchos de trabajo. Por encima de todo IHttpModule personalizada creación. Debe haber una solución más sencilla.

Yo sé que cuando creo contexto del objeto en el cliente (WPF) que puedo agregar credenciales.

Uri uri = new Uri("http://localhost/myapp/odata.svc");

MyEntities ent= new MyEntities (uri);
ent.Credentials = new NetworkCredential("token", "zx5as9vxc5sa9h0vb6523cv56");

Pero dónde puedo leer (sin aplicación de la costumbre IHttpModule)?

pensé que puedo usar algo en clase que es la aplicación de servicio de datos por ejemplo:

protected override void OnStartProcessingRequest(ProcessRequestArgs args)
{
 string cred = args.OperationContext.AbsoluteRequestUri.UserInfo;
}

No estoy familiarizado con la información del usuario, pero la descripción de su forma actual "Obtiene el nombre de usuario, contraseña, ...)

Así que tengo dos preguntas principales:

  1. ¿Dónde puedo leer Credenciales incluidos por ent.Credentials mecanografía = new NetworkCredential ( "token", "zx5as9vxc5sa9h0vb6523cv56");

  2. ¿Dónde puedo (si puedo) establecer información del usuario en la aplicación cliente y usarla en el método OnStartProcessingRequest.

Saludos, Daniel Skowronski

¿Fue útil?

Solución

Hay una serie de post sobre autenticación y servicios de datos de WCF (que es la aplicación .NET del protocolo OData): http://blogs.msdn.com/b/astoriateam/archive/tags/authentication/

debe ser capaz de encontrar mucha más información (lo que incluye ejemplos de código).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top