Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Status
colourYellowGreen
titlePetición de cambio
 
En uso

Info
titlePetición de cambioEn uso

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 En Uso, tendrá descrita la situación actual..

 

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

...

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_mim

UPDATE persona SET fecha_actualizacion_mim = 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
    • persona.fecha_actualizacion_mim
    • persona_login.fecha_actualizacion_mim
    • persona_rol.fecha_actualizacion_mim
  • Para obtener las modificaciones que realmente aportan valor a MIM, se actualizan los campos anteriores mediante los triggers:
    • trg_mim_persona_bi_fecha_actualizacion
    • trg_mim_persona_login_bi_fecha_actualizacion

    • trg_mim_persona_rol_bi_fecha_actualizacion

    • trg_mim_persona_bu_fecha_actualizacion

    • trg_mim_persona_login_bu_fecha_actualizacion

    • trg_mim_persona_rol_bu_fecha_actualizacion

  • Los triggers anteriores actualizan *.fecha_actualizacion_mim con el valor NOW() y evalúan las operaciones INSERT y UPDATE, comparando :NEW :OLD sobre los campos:
    • persona.persona
    • persona.email
    • persona.apellido_paterno
    • persona.apellido_materno
    • persona_login.login
    • persona_login.contrasenia
    • persona_login.activo
    • persona_rol.rol_id 
    • persona_rol.activo
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
    las mismas reglas de negocio de timeModified.
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, aunque a día de hoy no se utiliza este parámetro por MIM.

 

 

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.

 

...

Histórico de

...

cambios

 

(Obligatorio)
  1. Fecha
UTC desde la cuál se solicitan las creaciones/actualizaciones de usuarios
  • 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).

 

Panel
bordertrue
titlePetición de cambio
Motivo del cambio: Optimizar
  1. Optimización de la sincronización entre MIM y BDC. Ver más detalles en
    Jira Legacy
    serverjira
    serverIdc4591e77-9027-38bb-9f88-3c0c61c1557a
    keyFIM-117
    .
  • 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
    • 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
    Panel
    titleEnlaces
    1. de resolución

     

    Tareas realacionadas

    Panel
    titleEnlaces
    • Jira Legacy
      serverjira
      serverIdc4591e77-9027-38bb-9f88-3c0c61c1557a
      keyFIM-117
    • Jira Legacy
      serverjira
      serverIdc4591e77-9027-38bb-9f88-3c0c61c1557a
      keyFIMPSI-117
     
    • 783