En este documento, se muestra cómo configurar la autenticación para acceder a las APIs de Google Workspace mediante las credenciales de cliente de OAuth 2.0. Las credenciales de cliente de OAuth 2.0 te permiten recuperar un token en el contexto de un usuario final, como un token necesario para acceder a Hojas de cálculo de Google. Sin importar dónde se aloje tu sistema SAP, puedes usar las credenciales de cliente de OAuth 2.0 para la autenticación en las APIs de Google Workspace, siempre que el sistema admita OAuth 2.0.
Para autenticarte en las APIs de Google Workspace con credenciales de cliente de OAuth 2.0, debes completar la siguiente configuración en tu proyecto de Google Cloud y tu entorno de SAP:
Parámetros de configuración de la consola de Google Cloud
Parámetros de configuración de los entornos de SAP
El SDK de ABAP para Google Cloud se envía con los siguientes componentes principales, que son necesarios para la autenticación basada en credenciales de cliente de OAuth 2.0:
- Tipo de proveedor de servicios de OAuth 2.0
/GOOG/ABAP_SDK
que especificas para la configuración del perfil de cliente de OAuth 2.0. - Clase de autenticación
/GOOG/CL_OAUTH_GOOGLE
que especificas para la configuración de la clave del cliente. - Implementaciones de complementos empresariales (BAdI) de SAP que prepropagan los parámetros de OAuth específicos de Google, como los extremos y la configuración de parámetros obligatoria
Sin embargo, también debes completar las siguientes configuraciones en tu entorno de SAP:
- Crea un perfil de cliente de OAuth 2.0
- Configura el cliente de OAuth 2.0
- Configura la clave de cliente
- Solicita tokens de acceso de OAuth 2.0
Crea un consentimiento de OAuth 2.0
La pantalla de consentimiento de OAuth es un mensaje que les indica a los usuarios quién solicita acceso a sus datos y a qué tipo de datos los usuarios permiten que acceda tu app.
En la consola de Google Cloud, ve a Menú> API y servicios > pantalla de consentimiento de OAuth.
Selecciona el tipo de usuario Externo para tu app y haz clic en Crear.
Para completar el formulario de registro de la app, especifica los siguientes detalles:
- Nombre de la app: Es el nombre de la aplicación que requiere consentimiento.
- Correo electrónico de asistencia del usuario: Es un correo electrónico de asistencia para que los usuarios se comuniquen contigo si tienen preguntas sobre su consentimiento.
- Dominios autorizados: Son los dominios que se usarán durante el consentimiento de OAuth.
- Información de contacto del desarrollador: Son las direcciones de correo electrónico que Google usará para notificarte sobre cualquier cambio en tu proyecto.
Haz clic en Save and Continue.
Crea un ID de cliente de OAuth 2.0
Para autenticarte como usuario final y acceder a los datos del usuario en tu app, debes crear uno o más IDs de cliente de OAuth 2.0. Un ID de cliente se usa con el fin de identificar una sola app para los servidores de OAuth de Google.
En la consola de Google Cloud, ve a Menú > API y servicios > Credenciales.
Haz clic en Crear credenciales >ID de cliente de OAuth.
En el campo Tipo de aplicación, selecciona Aplicación web.
En el campo Nombre, escribe un nombre para las credenciales. Este nombre solo se muestra en la consola de Google Cloud.
En URI de redireccionamiento autorizados, haz clic en Agregar URI. Luego, ingresa el URI de redireccionamiento de SAP al que el servidor de OAuth 2.0 puede enviar respuestas.
Puedes obtener el URI de redireccionamiento de SAP de la configuración de OAuth 2.0 en tu transacción
SICF
.Haz clic en Crear.
Anota el ID de cliente y el Secreto del cliente.
Crea un perfil de cliente de OAuth 2.0
Como desarrollador de ABAP, creas un perfil de cliente de OAuth con los permisos de OAuth 2.0 que se requieren para tus requisitos comerciales. Si deseas obtener información sobre los permisos de OAuth 2.0 para las APIs de Google, consulta Alcances de OAuth 2.0 para las API de Google.
El SDK incluye un perfil de cliente de OAuth de ejemplo llamado /GOOG/OAUTH_PROFILE_SAMPLE
.
Este perfil proporciona permisos de OAuth 2.0 configurados para las APIs de Google Workspace que se usan con mayor frecuencia, como Drive y Hojas de cálculo.
- En la GUI de SAP, ingresa el código de transacción
SE80
. - En la lista desplegable, selecciona Development Object.
- Para crear un objeto de desarrollo en el espacio de nombres personalizado, selecciona Crear > Otros > Perfil de cliente de OAuth 2.0 en el menú contextual del nombre del objeto
Ingresa los siguientes detalles:
- En el campo Client Profile, ingresa un nombre para el perfil de cliente.
- En el campo Tipo, selecciona
/GOOG/ABAP_SDK
. Este es el tipo de proveedor predeterminada que se envía con el SDK de ABAP para Google Cloud.
Agrega los permisos necesarios a tu perfil de cliente. Para obtener información sobre los permisos de OAuth 2.0, consulta Permisos de OAuth 2.0 para las APIs de Google.
Guarda el perfil del cliente en tu paquete de desarrollo. Incluye el perfil de cliente en una solicitud de transporte, que se puede transportar a entornos más altos.
Configura el cliente de OAuth 2.0
Como administrador de SAP, asocias el perfil de cliente de OAuth con las credenciales de cliente de Google Cloud.
Esta es una actividad única que debes realizar en cada sistema SAP en tu entorno de SAP (Desarrollo, pruebas y producción).
- En la GUI de SAP, ingresa el código de transacción
OA2C_CONFIG
. La página de acceso de SAP se abre en el navegador predeterminado. - Accede con tus credenciales de SAP.
- Para crear un cliente de OAuth 2.0, haz clic en Crear.
- En el cuadro de diálogo Create a new OAuth 2.0 client, haz lo siguiente:
- Selecciona el perfil de cliente de OAuth 2.0 que creaste antes en Crea un perfil de cliente de OAuth 2.0 en tu sistema SAP.
- Ingresa un nombre para la configuración.
- Ingresa el ID de cliente de OAuth 2.0 de las credenciales de Google Cloud que creaste antes en Crea un ID de cliente de OAuth 2.0.
- Haz clic en Aceptar.
- En la pestaña Administration, en la sección General Setting, ingresa el secreto del cliente de las credenciales de Google Cloud que creaste antes en Crea credenciales de ID de cliente de OAuth 2.0.
Si usas un servidor proxy para enrutar el tráfico HTTP/HTTPS saliente desde tu sistema SAP, debes mantener los siguientes detalles del host del proxy en la sección Configuración de acceso:
- Host de proxy
- Puerto proxy
- Usuario de proxy
- Contraseña de proxy
Haz clic en Guardar.
Configura la clave de cliente
-
En la GUI de SAP, ejecuta el código de transacción
/GOOG/SDK_IMG
.Como alternativa, ejecuta el código de transacción
SPRO
y, luego, haz clic en IMG de referencia de SAP. - Haz clic en el SDK de ABAP para Google Cloud > Configuración básica > Configurar clave de cliente.
- Haz clic en Entradas nuevas.
Ingresa los valores para los siguientes campos:
Campo Descripción Nombre de la clave de Google Cloud Especifica un nombre de la configuración de la clave de cliente. Nombre de la cuenta de servicio de Google Cloud Deja este campo en blanco. Permiso de Google Cloud Deja este campo en blanco. Identificador de proyecto de Google Cloud Especifica el ID del proyecto de Google Cloud que contiene las APIs de destino. Nombre del comando Deja este campo en blanco. Clase de autorización Especifica la clase de autenticación, /GOOG/CL_OAUTH_GOOGLE
.Almacenamiento en caché de tokens Deja este campo en blanco. Segundos de actualización de los tokens Deja este campo en blanco. Parámetro de autorización 1 Especifica el nombre del perfil de cliente de OAuth que creaste antes en Cómo crear un perfil de cliente de OAuth 2.0 en tu sistema SAP. Parámetro de autorización 2 Especifica el nombre de configuración que definiste en el cliente de OAuth 2.0 para un ID de cliente.
Este campo es obligatorio si asociaste un solo perfil de cliente de OAuth con más de un ID de cliente.
Para obtener más información, consulta Situación de varios proyectos de Google Cloud.
Guarda la entrada nueva.
Solicita tokens de acceso de OAuth 2.0
Como usuario final, debes solicitar un token de acceso de OAuth 2.0 para permitir el acceso a los recursos de la API.
Esta es una actividad única que cada usuario debe realizar en cada sistema SAP de tu entorno de SAP (Desarrollo, pruebas y producción). En caso de que se modifiquen los permisos de OAuth, los usuarios deberán repetir esta actividad.
- En la GUI de SAP, ingresa el código de transacción
OA2C_GRANT
. La página de acceso de SAP se abre en el navegador predeterminado. - Accede con tus credenciales de SAP.
- Selecciona el ID de cliente con el que deseas acceder a las APIs.
- Haz clic en Solicita tokens de OAuth 2.0.
En la pantalla de consentimiento Acceder con Google, ingresa las credenciales de tu Cuenta de Google y haz clic en Permitir.
Un indicador verde en la columna Estado de acceso indica que se permite el acceso a los recursos de la API según el perfil de cliente de OAuth 2.0.
Situación de varios proyectos de Google Cloud
Si habilitaste las APIs de Google Cloud en más de un proyecto de Google Cloud, sigue esta guía para configurar la autenticación con credenciales de cliente de OAuth 2.0:
- En todos los proyectos de Google Cloud, haz lo siguiente:
- En tu sistema SAP, haz lo siguiente:
- Si necesitas asociar un solo perfil de cliente de OAuth con más de un ID de cliente, sigue estas instrucciones adicionales:
- Configura el cliente de OAuth 2.0 para cada ID de cliente. Cuando configures un cliente de OAuth 2.0, en el cuadro de diálogo Create a new OAuth 2.0 client, especifica un nombre de configuración único para cada ID de cliente. Para obtener más información, consulta Configura el cliente de OAuth 2.0.
- Configura claves de cliente independientes para cada cliente de OAuth 2.0 con su propio nombre de configuración en el Parámetro de autorización 2. Para obtener más información, consulta Configura la clave de cliente.
Valida la configuración de autenticación
Para validar la configuración de autenticación, sigue estos pasos:
En la GUI de SAP, ejecuta el código de transacción
/GOOG/SDK_IMG
.Como alternativa, ejecuta el código de transacción
SPRO
y, luego, haz clic en IMG de referencia de SAP.Haz clic en SDK de ABAP para Google Cloud > Utilidades > Validar configuración de autenticación.
Ingresa el nombre de la clave del cliente.
Haz clic en Ejecutar para verificar si el flujo general se configuró correctamente.
Una marca de verificación verde en la columna Resultado indica que todos los pasos de configuración se completaron de forma correcta.
Obtenga asistencia
Si necesitas ayuda para resolver problemas con el SDK de ABAP para Google Cloud, haz lo siguiente:
Consulta la guía de solución de problemas del SDK de ABAP para Google Cloud.
Haz tus preguntas y analiza el SDK de ABAP para Google Cloud con la comunidad en Cloud Forums.
Recopila toda la información de diagnóstico disponible y comunícate con el servicio de Atención al cliente de Cloud. Si deseas obtener más información para comunicarte con el equipo de Atención al cliente de Cloud, consulta Obtén asistencia para SAP en Google Cloud.