Establecimiento de la contraseña de spiuser en las imágenes de Docker

El administrador debe elegir una contraseña para un usuario SPI predeterminado que se denomina spiuser y, a continuación, establecer la contraseña de spiuser en los contenedores de Docker HCL Commerce.

Esta contraseña se utiliza solo para la invocación entre componentes del servidor API.

Esta contraseña se almacena para Store server, Search server y Customization server en el archivo de configuración de WebSphere Application Server V8.5.5 Liberty userregistry.xml. En, Transaction serverel usuario spiuser se configura en la base de datos.

La contraseña debe ser la misma en todos los servidores, y cada imagen de Docker debe configurarse con la contraseña de usuario spiuser correcta. Si las contraseñas no coinciden o si un contenedor se deja sin configurar, los servidores de componentes no pueden realizar las llamadas a la API necesarias para que funcionen conjuntamente.

Los siguientes flujos de llamadas a la API utilizan las credenciales spiuser:
  • El Store server llama al Search server y al Transaction server.
  • El Customization server llama al Transaction server.
  • Transaction server llama a Customization server.
  • El Search server llama a Transaction server, Customization servery a otros Search server.
Importante:
  • Asegúrese de que utiliza una contraseña segura.
  • HCL Commerce Version 9.1.9.0 or laterSe ha introducido un requisito de longitud mínima de 45 caracteres para nuevas implementaciones de HCL Commerce 9.1.9.0 o superiores.

Procedimiento

  1. Inicie la sesión en el servidor dedicado que aloja el Utility server Docker container.
    Si Utility server Docker container no se ha implementado, consulte Preparar un servidor de host de Docker para iniciar Utility server Docker container.
  2. Introduzca el Utility server Docker container.
    Por ejemplo,
    docker exec -it utility_container_name bash
  3. Vaya al directorio /opt/WebSphere/CommerceServer90/bin.
  4. Ejecute el siguiente mandato para cifrar la contraseña de spiuser.
    ./wcs_encrypt.sh plain_text_spiuser_password
  5. Copie y guarde la plain_text_spiuser_password en un archivo de texto.

    Necesita la contraseña de texto sin formato para desplegar los contenedores HCL Commerce.

  6. Genere la contraseña cifrada merchantKey y guárdela en la base de datos.
    1. Obtenga el valor de sal para la contraseña de spiuser.
      1. Abra un indicador de línea de mandatos de la base de datos y ejecute lo siguiente en la base de datos para obtener el valor de sal.
        select salt from userreg where logonid='spiuser';
      2. Si el resultado que se devuelve es NULL, debe establecer un valor de sal para la contraseña de spiuser.
        update userreg set salt='salt' where logonid='spiuser';
        Donde salt son 12 caracteres alfanuméricos aleatorios del conjunto siguiente:
        abcdefghijklmnoprstuvxyz1234567890

        Por ejemplo, m83u229zjsrv.

    2. Cifre la contraseña con salt con merchantKey.
      En un indicador de mandatos distinto, ejecute el siguiente programa de utilidad de mandato de HCL Commerce ubicado en el directorio /opt/WebSphere/CommerceServer90/bin.
      ./wcs_password.sh plain_text_spiuser_password salt unencrypted_merchantKey_value
      Nota: La utilidad wcs_password también se puede utilizar con el parámetro -k para cifrar la contraseña de sal sin necesidad de proporcionar la clave de comerciante no cifrada. Para obtener más información, consulte Genere una contraseña cifrada de HCL Commerce (wcs_password).
      Una versión cifrada merchantKey de la contraseña salted se genera en formato ASCII y hexadecimal.
    3. Almacene la contraseña cifrada en la base de datos.
      En el indicador de línea de mandatos de la base de datos, actualice la contraseña cifrada basados en la solución de base de datos que emplea.
      • DB2
        update userreg set logonpassword=x'encrypted_hexadecimal_output' where logonid = 'spiuser';
        Nota: El x'encrypted_hex_output' es necesario para almacenar el valor en formato hexadecimal.
      • Oracle
        update userreg set logonpassword='encrypted_hexadecimal_output' where logonid = 'spiuser';
  7. Salga del contenedor Docker.
  8. Comparta la contraseña en spiuser con el equipo de desarrollo.
    Nota: Los desarrolladores necesitan utilizar la contraseña en texto sin formato cuando cargan el esquema de HCL Commerce en la base de datos. En concreto, los desarrolladores deben proporcionar la contraseña de spiuser cuando Carga del esquema de base de datos de HCL Commerce.

Resultados

Los contenedores Docker HCL Commerce están ahora configurados y pueden comunicarse a través de llamadas a la API.

Qué hacer a continuación

Establezca el nombre de usuario spiuser (opcional) y la contraseña de usuario spiuser (obligatorio) durante la implementación para los servicios HCL Commerce que las necesitan. Estos valores pueden pasarse como variables de entorno o definirse en Vault. Para obtener más información sobre el proceso de inicio de la implementación, consulte Lógica de inicio del contenedor Docker para la Versión 9.0.0.2 HCL Commerce Version 9.1.