Usuario:ManuelRomero/DAW/distancia/OAuth
De WikiEducator
< Usuario:ManuelRomero
Revisión a fecha de 12:56 5 feb 2016; ManuelRomero (Discusión | contribuciones)
Trabajo en proceso, espera cambios frecuentes. Tu ayuda y retroalimentación son bienvenidos. Ver página de charlas. |
Protocolo OAuth 2.0
- http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=SpringSecurity-OAuth-Google
- http://rubenvasallo.es/php/google-y-su-oauth2/
- https://developers.google.com/accounts/docs/OAuth2?hl=es
- https://github.com/google/google-api-php-client
- http://www.thegameofcode.com/2012/07/conceptos-basicos-de-oauth2.html
- http://es.wikipedia.org/wiki/OAuth
Que es oauth2.0
OAuth (Open Authorization) es un protocolo abierto, que tras autentificarse (seguridad) autoriza el uso de una API para aplicaciones de escritorio, móviles y web. |
- 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
- Cliente Aplicación que quiere acceder a los datos privados en nombre del propietario
- Propietario de recursos El es quien puede dar permiso para acceder a recursos y solo él
- 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.
Pendiente de desarrollar
http://www.ladrupalera.com/drupal/desarrollo/javascript/como-usar-una-api-de-google-con-autenticacion-traves-de-oauth2
- Diferencias entre autentificar y autorizar
- Descripción de cada proceso
- Uso del protocolo con php
- Alcance de su uso
- Duración de las claves
- Es importante que Auth es un protocolo de autorización más que de autentificación.
- Lo que permite Auth es que una aplicación acceda en tu nombre a ciertos datos tuyos privados sin que tenga que conocer la aplicación tus credenciales.
- Podemos leer la documentacion oficial
https://developers.google.com/identity/protocols/OAuth2
- Esta misma idea la podemos usar para autentificarnos. Vamos a seguir el proces
- Paso 1
- Identificamos nuestra aplicación en google
- Accedemos a https://console.developers.google.com/dcredirect?pli=1#access
- Si no estábamos registrados, nos pedirá que nos autentifiquemos
- Creamos el nuevo proyecto
Archivo:Auth 3.png
Paso2 Seleccionamos las apis a las que queremos que los clientes puedan acceder
Seleccionamos el menú de credenciales (Credentials) y creamos un cliente nuevo
- Ahora hay que establecer permisos, el cual es un paso importante