Seguridad en REST
Siendo casi la 1 am aqui en Lima continuo escribiendo las preguntas que he acumulado.
Una pregunta sobre REST es como implementar la seguridad.
La seguridad en REST hoy en dia esta limitada a la autenticacion HTTP, los que llaman pueden usar Basic, Digest, Windows o credenciales de certificados para autentificar cada llamada. Los cookies HTTP pueden ser asignados despues que quien llama es identificado usando la autentificacion de ASP .NET o despues de completada la autentificacion HTTP.
Al usar WebHttpBinding se puede habilitar la autentificacion para un endpoint al habilitar uno de dos modos de seguridad: Transport o TransportCredentialOnly Transport requiere SSL, mientras que TransportCredentialOnly envia las credenciales sin SLL. En cualquier caso la eleccion de la credencial esta definida por los valores de HttpClientCredentialType
Aqui estan los posibles valores:
http://msdn.microsoft.com/en-us/library/system.servicemodel.httpclientcredentialtype.aspx
Una alternativa menos atractiva es proteger los servicios REST usando la autentificacion ASP .NET. Lo cual significa habilitar el modo de compatibilidad ASP .NET para el servicio.