1.1: Vinculación de cuentas mediante OAuth

Introducción e impacto empresarial


Para aprovechar las APIs de Google, OAuth debe otorgarle a tu integración el acceso de comercio necesario para incorporarlas a las fichas gratuitas y los anuncios pagados.

OAuth alternativo

Tu aplicación debe usar OAuth 2.0 para autorizar solicitudes. No se admiten otros protocolos de autorización.

Orientación en UX


Objetivo: Permitir que los comercios estén autorizados para compartir el uso de sus datos en Google app.

Principio de diseño: Solicita el permiso adecuado en el momento oportuno. Si los comercios no te otorgan el permiso, genera un error inesperado.

Se le solicita al comercio que proporcione permisos de acceso. Aquí tienes un ejemplo de cómo se pueden mostrar estas instrucciones al comercio:

oauth_1

oauth_2

Una vez que el comercio realiza estos pasos iniciales, hay tres resultados posibles:

Resultado 1: Si el comercio acepta todos los permisos:

oauth_3

Si el comercio otorga permisos completos, marca todas las casillas y se le solicita que continúe con el proceso de integración.

Resultado 2: Si el comercio no acepta los anuncios

oauth_4

El comercio marca todas las casillas, excepto el permiso relacionado con Google Ads. Continúa con el proceso de integración y, luego, cuando crea una cuenta nueva de Google Ads o se conecta a una cuenta existente, se le vuelve a solicitar que otorgue permisos:

oauth_5 oauth_6

Resultado 3: Si la verificación del sitio o los datos de productos no está marcada, el comercio no puede continuar con la integración

oauth_7

oauth_8

oauth_9

oauth_10

Todas las opciones anteriores generan el mismo mensaje de error:

oauth_11

Orientación técnica


Elige las solicitudes de autorización con OAuth 2.0

Existen dos métodos para seleccionar un método de autenticación de comercios:

OAuth 2.0 para cuentas que no son de servicio (altamente recomendado) OAuth 2.0 para cuentas de servicio
Un cliente de OAuth 2.0 identifica la aplicación y permite que los usuarios finales otorguen a tu aplicación acceso limitado a sus datos de Google. Permite que la aplicación acceda a las APIs de Google Cloud en nombre del usuario final.

Los casos de la lista dan como resultado que se invalide el token de acceso, que debería incluirse en el código:

● El usuario revocó el acceso
● El usuario cambió la contraseña
● Se superó el límite de tokens de actualización otorgados
● El token de actualización no se usó en 6 meses
Las cuentas de servicio son Cuentas de Google especiales que las aplicaciones pueden usar para acceder a las APIs de Google de manera programática con OAuth 2.0.Usan un flujo de OAuth 2.0 que no requiere autorización humana. En cambio, usa un archivo de claves al que solo puede acceder tu aplicación.

Nota: Las aplicaciones que usan cuentas de servicio para la autenticación solo pueden acceder a sus propias cuentas de Merchant Center. Si estás escribiendo una aplicación de terceros que necesita acceso a las cuentas de Merchant Center de tus clientes, consulta la guía de autorización de solicitudes.

Nota: Se requiere un proyecto de Cloud y permite crear hasta 100 cuentas de servicio. Consulta la documentación

Configura el flujo de OAuth

El marco de trabajo de autorización de OAuth 2.0 permite que una aplicación de terceros obtenga acceso limitado a un servicio HTTP, ya sea en nombre de un propietario de recurso, ya sea mediante la organización de una interacción de aprobación entre el propietario del recurso y el servicio HTTP, o cuando se permite que la aplicación de terceros obtenga acceso por su cuenta.

Debido a que tu app accede a datos protegidos (privados), necesitas un ID de cliente de OAuth 2.0. Las API de Google usan el protocolo OAuth 2.0 para la autenticación y la autorización. Google admite situaciones comunes de OAuth 2.0, como las del servidor web, las aplicaciones instaladas y las del cliente.

Más información

Ten en cuenta lo siguiente sobre el uso de OAuth para la Content API for Shopping:

  1. Asegúrate de haber configurado el access_type como sin conexión: Los tokens de acceso vencen periódicamente y se convierten en credenciales no válidas para una solicitud a la API relacionada.

  2. Actualiza un token de acceso: Puedes hacerlo sin solicitarle permiso al usuario (incluso cuando no está presente) si solicitaste acceso sin conexión a los permisos asociados con el token (más información).

  3. Implementación de OAuth en las bibliotecas: Te recomendamos que uses las bibliotecas cliente de las API de Google.

  4. Alcance: Debes solicitar a tu comercio que te otorgue acceso de lectura y escritura en su Cuenta de Google con el alcance de OAuth de Google Merchant Center: https://www.googleapis.com/auth/content.

  5. Puedes usar OAuth para obtener información clave del perfil de usuario.

Permisos para usar en tu integración

Según el tipo de integraciones que planeas compilar para tus comercios, te recomendamos que solicites todos los permisos necesarios en este momento.

Program Permiso Qué formato se requiere para el alcance
Content API https://www.googleapis.com/auth/content Fichas gratuitas
Verificación de sitios https://www.googleapis.com/auth/siteverification Fichas gratuitas y anuncios pagados
Ads https://www.googleapis.com/auth/adwords Fichas gratuitas y anuncios pagados

Verifica si los comercios otorgaron acceso a OAuth

Los comercios deben marcar casillas en el flujo de consentimiento de OAuth para otorgarte acceso a alcances específicos: Si faltan los permisos necesarios, explícales a los comercios por qué son obligatorios y vuelve a solicitar el permiso (más detalles). No tener acceso a todos estos permisos impide que los comercios se integren por completo.

access

Llama al siguiente extremo de API para verificar los permisos otorgados:

https://www.oauth2.googleapis.com/token

La URL muestra la siguiente información:

  • access_token
  • permisos otorgados al usuario
  • tiempo antes del vencimiento del token

solicitud

Permisos sensibles y proceso de verificación de OAuth

Algunos permisos que usan las APIs de OAuth se consideran sensibles y requieren un proceso de verificación. Puedes encontrar información adicional y ejemplos en OAuth para Content API.

  1. Alcance sensible de la app para cumplir con la política: Debes asegurarte de que tu app cumpla con la Política de Datos del Usuario de los Servicios de la API de Google. También debes aceptar las Condiciones del Servicio de la API.

  2. Confirma que tu app no se incluya en ninguno de los casos de uso enumerados en los requisitos de excepciones a la verificación.

  3. Verifica la propiedad de los dominios autorizados de tu proyecto con Search Console. Usa una cuenta que sea Propietario o Editor del proyecto de la consola de Cloud.

  4. Asegúrate de que toda la información de marca en la pantalla de consentimiento de OAuth coincida y sea válida, como el nombre del proyecto que se muestra a los usuarios, el correo electrónico de asistencia, la URL de la página principal y la URL de la política de privacidad, que represente con exactitud la identidad de la app.

  5. Solicita a tu app un alcance sensible con el proceso de verificación: Sigue el proceso, que requiere completar un formulario, proporcionar una justificación y enviar un video.