Configuración de autenticación de SuccessFactors OData API en Jitterbit App Builder
SuccessFactors admite el flujo OAuth 2.0 SAML Bearer Assertion. Este flujo proporciona autorización restringida al usuario, intercambiando aserciones SAML por tokens de acceso como se describe en la siguiente especificación:
https://tools.ietf.org/html/draft-ietf-oauth-saml2-bearer-23
Este documento cubre las siguientes tareas:
- Registrar App Builder como una aplicación cliente OAuth2 de SuccessFactors
- Registrar SuccessFactors como un proveedor de seguridad de App Builder.
- Registrar el servidor de fuente de datos del servicio OData de SAP.
Requisitos
Para continuar, necesitarás lo siguiente:
- Una cuenta de SuccessFactors existente.
- Acceso de administrador a la cuenta de SuccessFactors.
- Acceso de administrador a App Builder.
Registrar App Builder como una aplicación cliente OAuth2 de SuccessFactors
App Builder deberá registrarse dentro de SuccessFactors como una aplicación cliente OAuth2. Para registrar App Builder como una aplicación cliente OAuth2, necesitarás la siguiente información:
| Ejemplo | Notas | |
|---|---|---|
| Nombre de aplicación | App Builder | El nombre de la aplicación es arbitrario. Si registras múltiples instancias de App Builder como aplicaciones cliente OAuth2, asigna a cada una un nombre distintivo. |
| URL de aplicación | https://example.com/Vinyl/ | Esta es la raíz web de App Builder. La URL debe incluir la barra diagonal al final. |
| Nombre común | example.com | Esta es la porción del nombre de host de la raíz web. |
Para registrar App Builder como una aplicación cliente OAuth2 de SuccessFactors:
- Inicia sesión en SuccessFactors como administrador
- Navega al Centro de administración
- Selecciona Configuración de empresa → Administrar aplicaciones cliente OAuth 2
- Haz clic en el botón Registrar aplicación cliente
- Proporciona el Nombre de aplicación y la URL de aplicación
- Haz clic en el botón Generar certificado X.509
- Proporciona el Nombre común (CN)
- Haz clic en el botón Generar
- Haz clic en el botón Descargar para guardar el certificado
- Haz clic en el botón Registrar
Una vez registrada, SuccessFactors asignará una clave de API. La clave de API, junto con el certificado, será necesaria para completar los procedimientos restantes.
Convertir certificado
SuccessFactors genera un certificado en formato PEM; App Builder requiere un certificado en formato PKCS#12 codificado en base64. Una discusión completa de este tema está fuera del alcance de este documento. Sin embargo, como ejemplo, se puede utilizar la utilidad de línea de comandos OpenSSL para convertir un certificado de PEM a PKCS#12:
openssl pkcs12 -in certificate.pem -export -out certificate.pfx
Ten en cuenta que se te pedirá que proporciones una contraseña. Registra la contraseña ya que será necesaria más adelante.
Para codificar el certificado en base64:
openssl base64 -in certificate.pfx -out certificate.txt -A
Para obtener más información sobre los certificados de aplicaciones cliente OAuth2 de SuccessFactors, consulta el siguiente documento:
http://help.sap.com/saphelpiis_cloud4hr/EN/SuccessFactors_HCM_Suite_OData_API_Handbook_en.pdf
Nota
En el momento de escribir esto, SuccessFactors no genera un certificado compatible con OpenSSL. Para hacer que el certificado sea compatible, abre el certificado en un editor de texto y realiza los siguientes cambios:
Reemplaza ambas ocurrencias de "ENCRYPTED PRIVATE KEY" con "PRIVATE KEY".
Registrar SuccessFactors como proveedor de seguridad de
App Builder {: #register-successfactors-as-an-app-builder-security-provider }
Para registrar SuccessFactors como proveedor de seguridad de App Builder, se necesita la siguiente información:
| Ejemplo | Notas | |
|---|---|---|
| Clave API | SuccessFactors asigna la Clave API al registrar la Aplicación Cliente OAuth2 (ver arriba). | |
| Certificado de firma | El certificado de firma debe ser un certificado PKCS#12 codificado en base64 que contenga la clave privada. Se puede generar manualmente o durante el proceso de registro de la Aplicación Cliente OAuth2 de SuccessFactors (ver arriba). | |
| Contraseña del certificado de firma | SuccessFactors asigna la contraseña del certificado de firma al generar el certificado con formato PKCS#12. | |
| ID de empresa | El identificador de empresa de SuccessFactors. | |
| URL de API de instancia | https://api8.successfactors.com/ | URL de API de SuccessFactors: "Las URL de extremo para acceder a las API de OData dependen del centro de datos que aloja la instancia de SuccessFactors." Consulta http://help.sap.com/saphelpiis_cloud4hr/EN/SuccessFactors_HCM_Suite_OData_API_Handbook_en.pdf para obtener más información. |
Nota
La URL no contiene la ruta /odata/v2. App Builder agregará la ruta.
Para registrar SuccessFactors como proveedor de seguridad de App Builder:
- Inicia sesión en App Builder como Administrador
- Navega al IDE
- Haz clic en el botón Proveedores de seguridad
- Haz clic en el botón + Proveedor de seguridad
-
Proporciona lo siguiente:
- Nombre: Un nombre único para el proveedor de seguridad.
- Ejemplo: SuccessFactors
- Tipo: SuccessFactors OData
-
Prioridad: Un número entero único entre 10 y 100. Ten en cuenta que este valor debe ser único.
Ejemplo: 40
-
Haz clic en el botón Guardar
-
Establece las siguientes propiedades (En el panel de Propiedades, haz clic en el botón + Propiedad → Selecciona el Parámetro → Proporciona el Valor → Haz clic en el icono Guardar):
-
AuthenticationType: Saml
- CompanyID: ID de empresa
- ApiKey: Clave API
- InstanceApiUrl: URL de API de instancia
- SigningCertificate: Certificado de firma
-
SigningCertificatePassword: Contraseña del certificado de firma
-
Haz clic en el botón Edit (Editar) en el panel Providers (Proveedores)
- Marca la opción Enabled (Habilitado)
- Haz clic en el botón Save (Guardar)
Registrar el servidor de fuente de datos de SAP OData
Para registrar SuccessFactors como servidor de fuente de datos de App Builder, necesitarás la siguiente información:
| Ejemplo | Notas | |
|---|---|---|
| OData Endpoint | https://api8.successfactors.com/odata/v2/ | URL de API de SuccessFactors: "Las URL de endpoint para acceder a las API de OData dependen del centro de datos que hospeda tu instancia de SuccessFactors." Consulta http://help.sap.com/saphelpiis_cloud4hr/EN/SuccessFactors_HCM_Suite_OData_API_Handbook_en.pdf para obtener más información. |
| Security Provider Name | SuccessFactors | El nombre del proveedor de seguridad proporcionado anteriormente. |
Nota
A partir de marzo de 2016, el OData Endpoint parece requerir una barra diagonal al final.
Para registrar SuccessFactors como servidor de fuente de datos de App Builder:
- Inicia sesión en App Builder como administrador
- Ve a IDE
- Selecciona el botón Data Servers (Servidores de datos)
- En el panel Data Servers (Servidores de datos), haz clic en el botón + Server (+ Servidor)
-
Proporciona lo siguiente:
- Name (Nombre): Un nombre de servidor único y lógico.
- Example (Ejemplo): SuccessFactors
- Type (Tipo): SuccessFactors
-
URL:
{OData Endpoint}Ejemplo: https://api8.successfactors.com/odata/v2 -
Example (Ejemplo):
https://api8.successfactors.com/odata/v2 - Security Provider (Proveedor de seguridad):
{Security Provider Name}
-
Haz clic en el botón Save (Guardar)
Una vez que se haya registrado el servidor de fuente de datos, haz clic en el botón Test Connection (Probar conexión) para asegurar que todo esté configurado correctamente. Es posible que se te solicite iniciar sesión con Okta en este momento.
Solución de problemas
Una lista de respuestas de error de OAuth 2.0 de SuccessFactors está disponible en la siguiente página:
http://help.sap.com/saphelpiis_cloud4hr/EN/SuccessFactors_HCM_Suite_OData_API_Handbook_en.pdf
El apéndice "OAuth 2.0 Related Error Messages" (Mensajes de error relacionados con OAuth 2.0) contiene errores adicionales:
Consulta lo siguiente para obtener información adicional de solución de problemas:
Security provider - successfactors OData
"Either the server is unavailable or the connection information is incorrect." when testing connection
Asegúrate de que la URL del servidor de origen de datos termine con una barra diagonal. Por ejemplo:
https://api8.successfactors.com/odata/v2/
A partir de marzo de 2016, SuccessFactors requiere una barra diagonal al final.
"Accessing OData API using Basic authentication or External OAuth on non-API servers is forbidden." when testing connection
Es posible que el punto de acceso de la API haya sido reemplazado con uno nuevo. Por ejemplo, los siguientes puntos de acceso han sido reemplazados:
- En noviembre de 2015, el punto de acceso de la API
https://salesdemo4.successfactors.com/fue reemplazado conhttps://apisalesdemo4.successfactors.com/. - En marzo de 2016, el punto de acceso de la API
https://hcm8preview.sapsf.com/fue reemplazado conhttps://api8preview.sapsf.com/.