ManuelRomero/DAW/dwes/Proyecto

Que es oauth2.0
 * 1) http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=SpringSecurity-OAuth-Google
 * 2) http://rubenvasallo.es/php/google-y-su-oauth2/
 * 3) https://developers.google.com/accounts/docs/OAuth2?hl=es
 * 4) https://github.com/google/google-api-php-client
 * 5) http://www.thegameofcode.com/2012/07/conceptos-basicos-de-oauth2.html
 * 6) http://es.wikipedia.org/wiki/OAuth


 * Permite mediante terceros (No es ni el cliente ni el servidor, sino un servicio externo a nuestra aplicación, como google, twiter o Facebook), poder autentificarnos en lugar de tener que identificar usuario y contraseña en nuestra aplicación
 * En realidad esta parte es más propia de OpenID, pero queda integrada en oAuth2.0
 * Además autoriza mediante el uso de token a que el cliente pueda acceder a determinada información privada de un usuario sin necesidad de identificarse con los credenciales de dicho usuario, pero sí acceder en su nombre
 * La idea es que una aplicación (cliente)  que requiere tener acceso a datos privados de un usuario (Propietario de recursos). Pero esta aplicación no debe conocer los datos privados usuario y contraseña del propietario de recursos
 * Entonces entra en escena un tercer elemento llamado proveedor
 * Êl proveedor identifica al cliente y le concede permiso para acceder a los recursos privados
 * El escenario se produce con tres elementos
 * 1) Cliente Aplicación que quiere acceder a los datos privados en nombre del propietario
 * 2) Propietario de recursos El es quien puede dar permiso para acceder a recursos y solo él
 * 3) Provedor (Servidor de recursos y de autentificación). Pueden ir juntos o separados. Contienen los datos privados a los que quiere acceder y por medio de tokens es capaz de aceptar solicitudes del cliente y responder con los datos solicitados. Genera tokens de acceso, valida usuarios y accesos.