Configuración de la autenticación de la API OData de SuccessFactors en Jitterbit App Builder
SuccessFactors admite el flujo de SAML Bearer Assertion de OAuth 2.0. Este flujo proporciona autorización restringida por usuario, intercambiando afirmaciones 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 la fuente de datos del servicio SAP OData.
Requisitos
Para proceder, 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 la Aplicación | App Builder | El nombre de la aplicación es arbitrario. Si registras múltiples instancias de App Builder como aplicaciones cliente OAuth2, dale a cada una un nombre distintivo. |
URL de la Aplicación | https://example.com/Vinyl/ | Esta es la raíz web de App Builder. La URL debe incluir la barra diagonal final. |
Nombre Común | example.com | Esta es la parte del nombre del host de la raíz web. |
Para registrar App Builder como una Aplicación Cliente OAuth2 de SuccessFactors:
- Inicie sesión en SuccessFactors como administrador
- Navegue a Admin Center
- Seleccione Configuración de la Empresa → Administrar Aplicaciones Cliente OAuth 2
- Haga clic en el botón Registrar Aplicación Cliente
- Proporcione el Nombre de la Aplicación y la URL de la Aplicación
- Haga clic en el botón Generar Certificado X.509
- Proporcione el Nombre Común (CN)
- Haga clic en el botón Generar
- Haga clic en el botón Descargar para guardar el certificado
- Haga clic en el botón Registrar
Una vez registrado, SuccessFactors asignará una Clave API. La Clave 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 sobre este tema está fuera del alcance de este documento. Sin embargo, a modo de 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
Tenga en cuenta que se le pedirá que proporcione una contraseña. Anote 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 información adicional sobre los certificados de Aplicaciones Cliente OAuth2 de SuccessFactors, consulte 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, abra el certificado en un editor de texto y realice los siguientes cambios:
Reemplace ambas ocurrencias de "ENCRYPTED PRIVATE KEY" por "PRIVATE KEY".
Inserte saltos de línea de modo que ninguna línea tenga más de 76 caracteres. Tenga en cuenta que estos deben ser saltos de línea estilo Unix (salto de línea), no saltos de línea estilo Windows o Internet (pares de salto de línea / retorno de carro).
Registrar SuccessFactors como un proveedor de seguridad de App Builder
Para registrar SuccessFactors como un proveedor de seguridad de App Builder, necesitarás la siguiente información:
Ejemplo | Notas | |
---|---|---|
Clave API | La clave API es asignada por SuccessFactors 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. El certificado puede generarse manualmente o durante el proceso de registro de la aplicación cliente OAuth2 de SuccessFactors (ver arriba). | |
Contraseña del Certificado de Firma | La contraseña del certificado de firma se asigna al generar el certificado en 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: "Tus URLs de punto final para acceder a las API de OData dependen del centro de datos que aloja tu instancia de SuccessFactors." Consulta http://help.sap.com/saphelpiis_cloud4hr/EN/SuccessFactors_HCM_Suite_OData_API_Handbook_en.pdf para información adicional. |
Nota
La URL no contiene la ruta /odata/v2. App Builder añadirá la ruta.
Para registrar SuccessFactors como un proveedor de seguridad de App Builder:
- Inicie sesión en App Builder como Administrador
- Navegue a la IDE
- Haga clic en el botón Security Providers
- Desde el panel de Autenticación de Fuente de Datos, haga clic en el botón + Data Source Authentication
-
Proporcione lo siguiente:
- Name: Un nombre de proveedor de seguridad único.
- Example: SuccessFactors
- Type: SuccessFactors OData
-
Priority: Un número entero único entre 10 y 100. Tenga en cuenta que este valor debe ser único.
Ejemplo: 40
-
Haga clic en el botón Save
-
Establezca las siguientes propiedades (En el panel de Propiedades, haga clic en el botón + Property → Seleccione el Parameter → Proporcione el Value → Haga clic en el ícono de Save):
- AuthenticationType: Saml
- CompanyID: ID de la Empresa
- ApiKey: Clave API
- InstanceApiUrl: URL de la API de la Instancia
- SigningCertificate: Certificado de Firma
- SigningCertificatePassword: Contraseña del Certificado de Firma
-
Haga clic en el botón Edit en el panel de Proveedores
- Marque la opción Enabled
- Haga clic en el botón Save
Registrar el servidor de fuente de datos del servicio SAP OData
Para registrar SuccessFactors como un servidor de fuente de datos de App Builder, necesitará la siguiente información:
Ejemplo | Notas | |
---|---|---|
OData Endpoint | https://api8.successfactors.com/odata/v2/ | URL de la API de SuccessFactors: "Sus URL de punto final para acceder a las API de OData dependen del centro de datos que aloja su instancia de SuccessFactors." Consulte http://help.sap.com/saphelpiis_cloud4hr/EN/SuccessFactors_HCM_Suite_OData_API_Handbook_en.pdf para información adicional. |
Security Provider Name | SuccessFactors | El nombre del proveedor de seguridad como se indicó anteriormente. |
Nota
A partir de marzo de 2016, el Endpoint OData parece requerir una barra inclinada al final.
Para registrar SuccessFactors como un Servidor de Fuente de Datos de App Builder:
- Inicie sesión en App Builder como administrador
- Navegue a la IDE
- Seleccione el botón Data Servers
- En el panel de Servidores de Datos, haga clic en el botón + Server
-
Proporcione lo siguiente:
- Name: Un nombre de servidor único y lógico.
- Example: SuccessFactors
- Type: SuccessFactors
-
URL:
{OData Endpoint}
Ejemplo: https://api8.successfactors.com/odata/v2
-
Example:
https://api8.successfactors.com/odata/v2
- Security Provider:
{Security Provider Name}
-
Haga clic en el botón Save
Una vez que se haya registrado el servidor de fuente de datos, haga clic en el botón Test Connection para asegurarse de que todo esté configurado correctamente. Es posible que se le pida que inicie sesión con Okta en este momento.
Troubleshooting
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 siguiente apéndice "Mensajes de Error Relacionados con OAuth 2.0" contiene errores adicionales:
Consulte lo siguiente para obtener información adicional sobre la solución de problemas:
Security provider - successfactors OData
"Either the server is unavailable or the connection information is incorrect." when testing connection "El servidor no está disponible o la información de conexión es incorrecta." al probar la conexión
Asegúrese de que la URL del servidor de fuente de datos termine con una barra inclinada al final. Por ejemplo:
https://api8.successfactors.com/odata/v2/
A partir de marzo de 2016, SuccessFactors requiere una barra inclinada al final.
"Accessing OData API using Basic authentication or External OAuth on non-API servers is forbidden." when testing connection "Acceder a la API OData utilizando autenticación básica o OAuth externo en servidores que no son API está prohibido." al probar la conexión
Es posible que el punto final de la API haya sido reemplazado por un nuevo punto final. Por ejemplo, los siguientes puntos finales han sido reemplazados:
- En noviembre de 2015, el punto final de la API
https://salesdemo4.successfactors.com/
fue reemplazado porhttps://apisalesdemo4.successfactors.com/
. - En marzo de 2016, el punto final de la API
https://hcm8preview.sapsf.com/
fue reemplazado porhttps://api8preview.sapsf.com/
.