Comienza la cuenta atrás para Keyfactor Tech Days | ¡Asegura tu plaza hoy mismo!

PCNS Error 6032

La semana pasada, un usuario informó de que había restablecido su contraseña, pero ésta no había cambiado en el sistema de recursos humanos conectado.

Como esto es una indicación de que el Servicio de Notificación de Cambio de Contraseña (PCNS) no estaba funcionando, comprobé el Visor de Eventos en el servidor del Motor de Sincronización. Aunque vi varios Event IDs indicando que se estaban recibiendo heartbeats de los DCs, no había ningún Event IDs 6903 en las últimas horas. 6903 es el evento que indica que una notificación de contraseña fue recibida de PCNS.

Por alguna razón, los cambios de contraseña no se enviaban al motor de sincronización.

En este entorno, tenemos un flujo de trabajo personalizado que permite al servicio de asistencia restablecer la contraseña de un usuario. Al activar el registro para ese flujo de trabajo, pude localizar el DC al que se enviaba la solicitud de cambio de contraseña. Con la ayuda de un miembro del grupo de operaciones de TI, comprobamos ese controlador de dominio y verificamos que el servicio PCNS se estaba ejecutando.

Cuando miramos en el Visor de sucesos de ese DC, no había ningún mensaje PCNS, ni errores ni sucesos informativos.

Un poco desconcertados en este punto, reiniciamos el servicio PCNS y vimos un error 6032-"La configuración del filtro para el objetivo 'xxxxx' no es válida. Esto hará que se filtren TODAS las notificaciones para este objetivo. Compruebe que el objeto de destino tiene los valores correctos para los identificadores de seguridad de inclusión y exclusión (SID)".

Esto parecía extraño, ya que no se había producido ningún cambio en esta configuración desde hacía meses. El mensaje parecía indicar que FIM no podía encontrar ni el grupo de inclusión ni el grupo de exclusión.

Tras indagar un poco, descubrimos que faltaba el grupo de exclusión. Resulta que durante un proceso de mantenimiento, se borraron todos los grupos que no tenían miembros y dio la casualidad de que el grupo de exclusión estaba vacío (nueva lección aprendida: pon siempre una descripción en los grupos de inclusión y exclusión para que los administradores sepan que no deben borrarlos; a menudo, en una organización grande, no todos los administradores sabrán para qué se utiliza el grupo).

Como no necesitábamos un grupo de exclusión, intentamos ejecutar pcnscfg para configurar PCNS para que no necesite un grupo de exclusión con este command:

pcnscfg MODIFYTARGET /N:fimsyncsvc.domain.com /A:fimsyncsvc.domain.com /D:PCNSCLNT/fimsyncsvc.domain.com /FI: "Usuarios del dominio" /FE:

Mantener vacío el valor del parámetro /FE: debería eliminar el grupo de exclusión de la configuración, pero en nuestro caso obtuvimos un error de que el nombre no podía resolverse.

Como sabíamos que faltaba el grupo de exclusión, supusimos que estaba intentando encontrar el grupo para confirmar el cambio y eliminarlo.

Para solucionar esto, creamos un nuevo grupo de seguridad para el grupo de exclusión y ejecutamos el PCNSCFG command especificando ese grupo. Mi suposición es que el MODIFYTARGET command puede sobrescribir el valor del grupo de exclusión incluso si no puede resolver el nombre anterior, pero que no puede borrar el valor del grupo de exclusión en ese caso.

Tras especificar el nuevo grupo de exclusión y reiniciar el servicio, las sincronizaciones de contraseñas empezaron a fluir de nuevo.

Como este error de configuración impedía que todos los cambios de contraseña se enviaran al destino, no había cola de solicitudes de cambio de contraseña para ir al servidor de sincronización. Por lo tanto, sólo las veíamos llegar a medida que los usuarios volvían a cambiar sus contraseñas.

Por último, volvimos a ejecutar command con el parámetro /FE: vacío, reiniciamos el servicio PCNS y las sincronizaciones de contraseñas volvieron a fluir, por lo que pudimos eliminar el grupo de exclusión.