Intro a OAuth2
martes, 6 de mayo de 2014
Hace algún tiempo los sitios web y aplicaciones requerían sus propios nombres de usuarios y contraseñas, lo que generó una explosión de logins y, con ello, varios efectos negativos. Por un lado, muchos utilizamos el mismo usuario y clave en todas las plataformas, lo que se convirtió en un problema de seguridad; ya que una vez se encuentran las claves de un sitio, el más vulnerable, se tiene, potencialmente, acceso a todos los demás. Por el otro, para evitar repetir claves, teníamos que aprender una gran cantidad de contraseñas y terminamos usando las más fáciles. Esto nos convierte en un blanco fácil de un ataque de diccionario o algún otro mecanismo de fuerza bruta.
Para aliviar estos problemas, nacieron estrategias que tercerizan la autorización. Un ejemplo de ellas es OAuth.
OAuth2 es un estándar abierto para autorización, que permite a un tercero el uso de los recursos propios de un usuario (en un servicio) en el nombre de éste, protegiendo la identidad del usuario, y restringiendo el acceso únicamente a lo que se necesita. Este estándar está diseñado para trabajar específicamente sobre el protocolo HTTP, y esencialmente lo que hace es generar tokens de acceso a un cliente con la aprobación de dueño de los recursos.
Esta federación de autorización nos facilita, como usuarios, a no tener que crear y recordar cientos de nombres de usuario y contraseñas; y como desarrolladores, a poder acceder a los datos de un usuario y a establecer un esquema de autenticación en pocas líneas. También ofrece mayor seguridad y transparencia, al establecer los alcances específicos de la aplicación que estamos integrando.
Más allá de la autorización, Google+ Sign-In
Hoy, con Google+ Sign-In, puedes permitir a tus usuarios iniciar sesión con las mismas credenciales que utilizan cada día en Google y con la misma protección al inicio de sesión, incluyendo la verificación en dos pasos. Es más fácil para los usuarios iniciar sesión con su cuenta de Google existente que crear y recordar los detalles de una cuenta nueva.