Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

PETICIÓN DE CAMBIO 

Petición de cambio

Cuando un requisito de sistema software tenga el estado Petición de Cambio, seguido de su descripción debe venir descrita la petición de cambio asociada.

 

Este servicio solo es consultado por el cliente MIM a través del SSB.

Situación actual

DescripciónConsulta los usuarios que pertenecen a países activos para MIM y que han sido creados/modificados en un rango de fecha determinado.
Referencia SIFExtensión de SIF 3.0.1
Tipo de PeticiónGET
Parámetros
CamposDescripciónReglas de negocio
country(Obligatorio) Identificador del país a consultar. Los valores de este campo se consultan con servicio /sif/catalogs/country;contextId {"keys":"false","FIMEnabled":"true"} (countryCode)
  • Los países para MIM se activan haciendo una petición a Consucorp, que activa el país en el fichero /basecentral/apache/web/sif/protected/components/SIFUtils.php y solicita a Soporte Infraestructura que se ejecute una query de actualización masiva del campo persona.fecha_actualizacion

UPDATE persona SET fecha_actualizacion = NOW(), persona_rol_id = 1 WHERE pais_id IN (<código del país>)

page(Obligatorio) La página de resultados a consultar, valor inicial 0
  • Se devuelven como máximo 200 resultados por página.
timeModified(Obligatorio) Fecha UTC desde la cuál se solicitan las creaciones/actualizaciones de usuarios
  • Se consultan los usuarios creados y modificados desde esta fecha, teniendo en cuenta los campos:Para asegurar que estos tres campos se actualizan con cualquier cambio realizado sobre los registros relacionados con persona, persona_login, persona_rol, tienen por defecto el valor: CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
    • persona.fecha_actualizacion
    • persona_login.fecha_actualizacion
    • persona_rol.fecha_actualizacion
endTimeModified(Obligatorio) Fecha UTC hasta la cuál se solicitan las creaciones/actualizaciones de usuarios
  • Se consultan los usuarios creados y modificados hasta esta fecha, teniendo en cuenta los campos:Para asegurar que estos tres campos se actualizan con cualquier cambio realizado sobre los registros relacionados con persona, persona_login, persona_rol, tienen por defecto el valor: CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
    • persona.fecha_actualizacion
    • persona_login.fecha_actualizacion
    • persona_rol.fecha_actualizacion
business(Opcional) Clave de la empresa a consultar. Los valores de este campo se obtienen del fichero de maestros empresa.csv
  • No existe un servicio que devuelva las claves de empresa, por ahora se conocen y se puede consultar por ellos.

 

 

Ejemplo de llamada

http://desenv.uno-internacional.com/sif/unoUserExt/users;contextId={"country":"MX","page":0, "timeModified":"2015-07-21T00:00:01.000+0000","endTimeModified":"2015-07-27T00:00:01.000+0000"}}

Ejemplo de respuesta:

<unoUserExtList pageSize="200">

<unoUserExt personRefId="00000000-0000-1000-0000-
000001000001"></unoUserExt>
<unoUserExt personRefId="00000000-0000-1000-0000-
000001000024"></unoUserExt>

....

</unoUserExtList>

Clientes que lo consumen
  • MIM (Microsoft Identitiy Manager) para gestión de ciclo de vida de identidad entre BDC y Santillana Connect.
    • El servicio se consulta cada 15 minutos, tantas veces como resultados devuelva / 200.
    • En MIM no se utiliza el parámetro opcional business.

 

Petición de cambio 

Petición de cambio
  • Motivo del cambio: Optimizar la sincronización entre MIM y BDC. Ver más detalles en
    Error rendering macro 'jira' : Unable to locate Jira server for this macro. It may be due to Application Link configuration.
    .
  • Se solicita un cambio sobre la lógica de negocio aplicada a los campos timeModified y endTimeModified, se describe a continuación:

 

CamposDescripciónReglas de negocio
timeModified(Obligatorio) Fecha UTC desde la cuál se solicitan las creaciones/actualizaciones de usuarios
  • Se consultan los usuarios creados y modificados desde esta fecha, teniendo en cuenta los campos:
    • persona.fecha_actualizacion
    • persona_login.fecha_actualizacion
    • persona_rol.fecha_actualizacion
    • persona.fecha_actualizacion_mim
    • persona_login.fecha_actualizacion_mim
    • persona_rol.fecha_actualizacion_mim
  • Para asegurar que estos tres campos se actualizan con cualquier cambio realizado sobre los registros relacionados con persona, persona_login, persona_rol, tienen por defecto el valor: CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
  • Para obtener las modificaciones que realmente aportan valor a MIM, se propone actualizar estas fechas creando 2 triggers, uno en la operaciones INSERT y otro en el UPDATE, que evalúe el :NEW :OLD únicamente en los campos sensibles a MIM y en caso de que haya divergencia actualice la fecha con el NOW().
  • Los trigger se crearían en las tablas:
    • persona
    • persona_login
    • persona_rol
  • Los campos afectados por los trigger serían:
    • persona.persona
    • persona.email
    • persona.apellido_paterno
    • persona.apellido_materno
    • persona_login.login
    • persona_login.contrasenia
    • persona_login.activo
    • persona_rol.empresa_id.parametro
    • persona_rol.rol_id.rol
    • persona_rol.rol_id.parametro
endTimeModified(Obligatorio) Fecha UTC hasta la cuál se solicitan las creaciones/actualizaciones de usuarios
    • Se consultan los usuarios creados y modificados hasta esta fecha, teniendo en cuenta los campos:
      • persona.fecha_actualizacion
      • persona_login.fecha_actualizacion
      • persona_rol.fecha_actualizacion
      • persona.fecha_actualizacion_mim
      • persona_login.fecha_actualizacion_mim
      • persona_rol.fecha_actualizacion_mim
    • Para asegurar que estos tres campos se actualizan con cualquier cambio realizado sobre los registros relacionados con persona, persona_login, persona_rol, tienen por defecto el valor: CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
    • Para obtener las modificaciones que realmente aportan valor a MIM, se propone actualizar estas fechas creando 2 triggers, uno en la operaciones INSERT y otro en el UPDATE, que evalúe el :NEW :OLD únicamente en los campos sensibles a MIM y en caso de que haya divergencia actualice la fecha con el NOW().
    • Los trigger se crearían en las tablas:
      • persona
      • persona_login
      • persona_rol
    • Los campos afectados por los trigger serían:
      • persona.persona
      • persona.email
      • persona.apellido_paterno
      • persona.apellido_materno
      • persona_login.login
      • persona_login.contrasenia
      • persona_login.activo
      • persona_rol.empresa_id.parametro
      • persona_rol.rol_id.rol
      • persona_rol.rol_id.parametro
  • Las acciones a realizar serían:
    • Crear nuevos campos en la BDC
      • persona.fecha_actualizacion_mim
      • persona_login.fecha_actualizacion_mim
      • persona_rol.fecha_actualizacion_mim
    • Agregar los trigger descritos en las tablas:
      • persona
      • persona_login
      • persona_rol
    • Hacer los cambios en BDC DEV y en el servicio /sif/unoUserExt/users para que consulte por los campos fecha_actualizacion_mim.
    • Con los resultados de las pruebas que se realicen sobre DEV, llevar propuesta al comité de cambios para su discusión entre todos los participantes.
    • Si se aprueba el cambio, agendar subida a PRE / PRO con Antonio de la Torre Camacha. EVRS, Christian Romo, Antonio López Márquez
    • Actualizar descripción del servicio /sif/unoUserExt/users lfigueroa@santillana.com (Unlicensed).

 

Enlaces
  • Unable to locate Jira server for this macro. It may be due to Application Link configuration.

 

 

 

  • No labels