Google Sign-In administra el flujo de OAuth 2.0 y el ciclo de vida del token, lo que simplifica tu integración con las APIs de Google. Los usuarios siempre tienen la opción de revocar el acceso a una aplicación en cualquier momento.
En este documento, se describe cómo completar una integración básica con el Acceso con Google.
Crea credenciales de autorización
Cualquier aplicación que use OAuth 2.0 para acceder a las APIs de Google debe tener credenciales de autorización que identifiquen la aplicación para el servidor OAuth 2.0 de Google. En los siguientes pasos, se explica cómo crear credenciales para tu proyecto. Luego, tus aplicaciones pueden usar las credenciales para acceder a las APIs que habilitaste para ese proyecto.
- Go to the Credentials page.
- Haz clic en Crear credenciales > ID de cliente de OAuth.
- Selecciona el tipo de aplicación Aplicación web.
- Asigna un nombre a tu cliente de OAuth 2.0 y haz clic en Crear.
Una vez que se complete la configuración, toma nota del ID de cliente que se creó. Necesitarás el ID de cliente para completar los próximos pasos. (También se crea un secreto de cliente, pero solo lo necesitas para las operaciones del servidor).
Carga la biblioteca de la plataforma de Google
Debes incluir la biblioteca de Google Platform en tus páginas web que integren el Acceso con Google.
<script src="https://apis.google.com/js/platform.js" async defer></script>
Especifica el ID de cliente de tu app
Especifica el ID de cliente que creaste para tu app en Google Play Console con el elemento meta google-signin-client_id
.
<meta name="google-signin-client_id" content="YOUR_CLIENT_ID.apps.googleusercontent.com">
Agrega un botón de Acceso con Google
La forma más fácil de agregar un botón de Acceso con Google a tu sitio es usar un botón de acceso renderizado automáticamente. Con solo unas pocas líneas de código, puedes añadir un botón que se configure automáticamente para tener el texto, el logotipo y los colores adecuados para el estado de acceso del usuario y los permisos que solicitas.
Para crear un botón de Acceso con Google que use la configuración predeterminada, agrega un elemento div
con la clase g-signin2
a tu página de acceso:
<div class="g-signin2" data-onsuccess="onSignIn"></div>
Cómo obtener información del perfil
Luego de que inicias sesión de un usuario en Google con los permisos predeterminados, puedes acceder al ID de Google, nombre, URL de perfil y dirección de correo electrónico del usuario.
Para recuperar la información de perfil de un usuario, usa el método getBasicProfile()
.
function onSignIn(googleUser) {
var profile = googleUser.getBasicProfile();
console.log('ID: ' + profile.getId()); // Do not send to your backend! Use an ID token instead.
console.log('Name: ' + profile.getName());
console.log('Image URL: ' + profile.getImageUrl());
console.log('Email: ' + profile.getEmail()); // This is null if the 'email' scope is not present.
}
Cómo cerrar la sesión de un usuario
Puedes habilitar que los usuarios salgan de tu app sin salir de Google. Para ello, agrega un botón o vínculo de salida a tu sitio. Para crear un vínculo de salida, adjunta una función que llame al método GoogleAuth.signOut()
al evento onclick
del vínculo.
<a href="#" onclick="signOut();">Sign out</a>
<script>
function signOut() {
var auth2 = gapi.auth2.getAuthInstance();
auth2.signOut().then(function () {
console.log('User signed out.');
});
}
</script>