Adición y autenticación de usuarios del sistema en Transparent Supply

Los usuarios del sistema pueden acceder mediante programación a las API de Transparent Supply para automatizar la carga de datos. Transparent Supply utiliza JSON Web Tokens (JWT) para la autenticación.

IBM® puede modificar las reclamaciones de JWT o la estructura de señales sin previo aviso. Asegúrese de tener esto en cuenta si elige crear una aplicación que decodifique y utilice partes de la señal.

Adición de usuarios del sistema

Los usuarios del sistema pueden acceder mediante programación a las API de Transparent Supply para automatizar las cargas de datos.

Para empezar, cree un ID de servicio deIBM Cloud®.

Después de crear un ID de servicio de IBM Cloud , un administrador de organización puede completar los pasos siguientes para añadir el usuario del sistema a una organización:
  1. Iniciar sesión en Transparent Supply
  2. Pulse Gestión de usuarios en el menú lateral.
  3. Pulse la ficha Usuarios del sistema.
  4. Pulse Añadir usuario del sistema +.
  5. Añada los detalles del usuario del sistema al formulario:
    • Especifique el Nombre.
    • Especifique el ID de servicio.
  6. Pulse Añadir para completar el proceso.

Autenticación de usuarios del sistema

Para autenticar un usuario del sistema con una API, debe generar una señal de IAM de IBM Cloud e intercambiarla por una señal de servicio de Transparent Supply .

Para generar una señal de servicio de Transparent Supply , realice las acciones siguientes:

  1. Cree un ID de servicio deIBM Cloud.
  2. Cree una clave de API para el ID de servicio de IBM Cloud .
  3. Añada el ID de servicio de IBM Cloud como usuario del sistema.
    Nota: Este paso lo debe completar un administrador de la organización.

  4. Genere una IBM Cloud IAM con la clave de API creada en el paso 2.
  5. Envíe la señal de IAM de IBM Cloud en el cuerpo de una solicitud POST HTTP a
    [Transparent Supply Service URL]/ift/api/identity-proxy/exchange_token/v1/organization/[YOUR ORGANIZATION ID]
    con la cabecera Content-Type establecida en application/json. Esta solicitud intercambia la señal de IAM de IBM Cloud para una señal de servicio de Transparent Supply .
    Nota: Debe utilizar el ID de organización para la organización en la que se ha añadido el ID de servicio de IBM Cloud como usuario del sistema y el URL de Transparent Supply Servicio URL en el URL que utiliza para la solicitud POST HTTP .
    Puede encontrar el ID de organización y el URL de servicio URL en el componente de organización en Transparent Supply.

Un intercambio de señales satisfactorio devuelve una estructura JSON con un único elemento, la señal de incorporación (Bearer).

{ "onboarding_token" : "eyJhbGciOiJSUzI1NiIsInR...", }

El valor del elemento onboarding_token se extrae en las solicitudes de API de Transparent Supply autenticadas. La autenticación se completa en Transparent Supply pasando el valor de onboarding_token en la cabecera de autenticación, utilizando "Bearer" como palabra clave.

Caducidad de la señal

La señal de IAM de IBM Cloud y las señales de servicio de Transparent Supply generadas a partir de la señal de IAM de IBM Cloud caducarán 1 hora después de que se genere la señal de IAM de IBM Cloud . Puede ver la hora a la que caduca la señal de IAM de IBM Cloud en el campo de caducidad de la señal. Asegúrese de que deja de utilizar la señal de servicio de Transparent Supply antes de la hora de caducidad y reinicie el proceso de autenticación para generar una nueva señal de servicio de Transparent Supply .

Las solicitudes que utilizan señales caducadas o no válidas fallan como no autorizadas.

Ejemplos de código

Puede utilizar estos ejemplos de código para crear una señal de IAM de IBM Cloud e intercambiarla por una señal de servicio de Transparent Supply . Se proporcionan ejemplos de autenticación para Java™, TypeScripte IBM Integration Bus (IIB). Puede utilizar estos ejemplos para configurar la automatización:

Resolución de problemas

Utilice el proceso siguiente para resolver problemas con la configuración de usuario del sistema.

Problema: Recibir una respuesta 404 al intercambiar una señal de IAM de IBM Cloud por una señal de servicio de Transparent Supply .

Respuesta de ejemplo:
{
  “ok”: false,
  “statusCode”: 404,
  “error”: “User Id: {SERVICE_ID} not found with solution Id: {SOLUTION_ID} and organization Id: {ORGANIZATION_ID}”
}
Acciones:
  1. Verifique que el ID de servicio de IBM Cloud esté registrado como usuario del sistema en el componente Transparent Supply Gestión de usuarios .
    • Si el ID de servicio de IBM Cloud no está registrado, siga las instrucciones para añadir usuarios del sistema.
    • Si el ID de servicio de IBM Cloud está registrado, continúe con el paso 2.
  2. Verifique que la solicitud de intercambio de señales de Transparent Supply tenga la información correcta:
    • Verifique el ID de organización.
    • Verifique el nombre de dominio de la instancia de Transparent Supply .