Recipient Update Service en Exchange 2000 y Exchange 2003

Parte III – Cómo las direcciones de smtp son aplicadas por RUS

Por: Daniel Seveso

 

La idea de esta serie es proveer información acerca de cómo identificar problemas en el componente “Recipient Update Service” (de aquí en adelante identificado por su sigla en inglés RUS. En la Parte I, hemos cubierto conceptos básicos sobre el servicio. En la Parte II, el seguimiento de problemas (troubleshooting). En esta tercera y última parte, veremos como RUS aplica las direcciones de smtp a los objetos del directorio.

 

¿Cual es el atributo que almacena la dirección smtp de los objetos en AD?

El atributo que almacena todas las direcciones electrónicas del usuario es proxyAddresses. Este atributo contiene una entrada por cada dirección electrónica, y su formato es:

 

<tipo>:<dirección>

 

tipo – Representa el provider o tipo de dirección electrónica, la cual puede ser smtp, X400, MS (MSMail), NOTES, ccMail, RFAX, etc. Cada tipo de dirección esta asociado a un proxy generator, una dll encargada de generar esta dirección.

dirección – Representa la dirección electrónica en un formato válido para el tipo de dirección asociada.

 

Si consultamos los atributos de mi usuario de pruebas, vemos tres entradas para el atributo proxyAddresses:

 

proxyAddresses: X400:c=US;a= ;p=dseveso;o=YAMAHA;s=Seveso;g=Daniel;

proxyAddresses: SMTP:dseveso@dseveso.com

proxyAddresses: smtp:dsevesosecundaria@test.com

 

¿Cuál es la dirección primaria o Reply address?

Si el tipo de dirección lo permite (como es el caso de smtp), podemos tener varias direcciones para un mismo tipo. Si el tipo de dirección está en mayúsculas indica que es la dirección primaria (dirección usada para generar o mensajes) y es la que aparece resaltada en las propiedades del usuario. En el caso de smtp la dirección primaria también se copia al atributo mail (atributo que vemos como “E-mail” en las propiedades de mi usuario)

 

mail: dseveso@dseveso.com

 

 

¿Cómo RUS agrega o modifica direcciones en el atributo proxyAddresses?

Como vimos en la Parte II, RUS busca objetos nuevos o modificados para actualizar en cada ciclo o cuando elegimos la opción “Update Now”. Si elegimos la opción “Rebuild” RUS procesará todos los objetos del directorio. Hay una tercera forma en que RUS actualiza objetos, y es cuando una política (Recipient Policy) es modificada o aplicada.

 

Las decisiones tomadas por RUS al momento de modificar el atributo proxyAddresses depende de dos factores: Cual es el estado actual del usuario (usuario nuevo o usuario ya procesado por RUS anteriormente) y cual sea la opción de actualización utilizada.

 

¿Qué sucede cuando se cambia el filtro de una política (Recipient Policy)?

Cuando se define una Recipient Policy, definimos el filtro que RUS aplicará al momento de evaluar cada usuario y determinar si la política aplica a un usuario dado. Este filtro, que se ve en la pestaña “General” de la política, se almacena en el atributo purportedSearch del objeto Recipient Policy en AD. Si este filtro es modificado, la política aplicará a un conjunto distinto de usuarios por lo que RUS debe actualizar el atributo msExchPoliciesIncluded (que contiene las políticas a las que un objeto esta sujeto) de ambos grupos de usuarios, el afectado por la anterior política, y el grupo nuevo que pertenecerá a esa política. Esta actualización sucede luego de modificar el filtro durante el ciclo normal de actualización o cuando se ejecuta “Update Now”. Sin embargo esta actualización NO modifica los proxyAddresses de ninguno de los grupos hasta que utilicemos la opción “Apply Now”


¿Qué sucede cuando se cambiamos el e-mail address de una política?

Si cambiamos una e-mail address por ejemplo de @dseveso.com a @compania1.com el comportamiento de RUS no se modifica en absoluto y tampoco el cambio dirección de e-mail se aplicará automáticamente a los usuarios afectados por la política a menos que la opción “Apply Now” sea utilizada.

Cuando cambiamos una dirección en la política, aparecerá una opción preguntándonos si queremos aplicar la política en ese momento:

 

Do you want to update all corresponding recipient e-mail addresses to match these new address(es)?

 

Si respondemos que Si, solo las modificaciones que realizamos se aplicarán a los usuarios afectados por esa política.

 

¿Qué sucede cuando aplicamos una política?

Vemos que hay dos formas de aplicar la política, contestando que “SI” a la pregunta anterior luego de modificar las direcciones e-mail, o utilizando el comando “Apply Now” del menú de contexto en la política.

Si contestamos “SI” a la pregunta, solamente la dirección que fue modificada es aplicada a los objetos.

Si aplicamos la política usando “Apply Now” todas las direcciones en la política son aplicadas.

 

Cuando se aplica una política el proceso de actualización difiere del de un ciclo normal de RUS, “Update Now” o “Rebuild”. Primero el Exchange System Manager actualiza el atributo gatewayProxy del objeto de RUS con cada dirección en la política que se aplicó. El atributo gatewayProxy actúa como una “lista de pendientes”. En su próximo ciclo de actualización, RUS consulta todos los objetos pertenecientes a esta política en lugar de consultar solo por nuevos y modificados, actualiza los usuarios y remueve las direcciones aplicadas del atributo GatewayProxy.

 

Esta “lista de pendientes” actualiza las proxyAddresses del usuario para que corresponda con las de la política aplicada. RUS regenera las direcciones existentes o las borra solamente cuando el tipo de dirección se encuentra en el atributo GatewayProxy. Si la dirección X400 o SMTP en la lista de pendientes de la política aplicada no coincide con la del usuario, la dirección primaria del usuario es pasada como secundaria y la dirección primaria de la política es usada para actualizar su dirección primaria. Si en la lista de pendientes de la política aplicada se encuentra una dirección secundaria, esta se agregará al usuario si en caso de no estar presente.

 

Algo importante a resaltar y que normalmente genera muchos inconvenientes, es que cuando un administrador modifica en forma manual la dirección de e-mail de un usuario y la configura como dirección primaria, este cambio se pierde si la política se aplica con “Apply Now” o si la dirección de dicha política es modificada y contestamos “Si” a la pregunta sobre actualizar los usuarios. Una forma de evitar esto es no aplicando la política, o desmarcando la opción “Automatically Update e-mail addresses based on recipient  policy” en la pestaña de E-mail Addresses de las propiedades de cada usuario.

 

Entonces, ¿En que condiciones se actualizan las direcciones de los usuarios?

- RUS regenera la dirección primaria de un usuario con la dirección de su política solamente si la política ha sido aplicada y el tipo de dirección se encuentra en el atributo gatewayProxy de RUS. En ningún otro caso RUS va a verificar si la dirección de un usuario corresponde con la de su política.

- RUS agrega  una dirección secundaria solamente cuando el usuario es nuevo, o cuando la política ha sido aplicada.

- Si se desmarca la opción a la izquierda de cada tipo de dirección en las propiedades de la política, todas las direcciones de ese tipo son borradas cuando la se aplica la política. Tenemos que tomar en cuenta que Exchange System Manager no nos preguntará para aplicar la política si nosotros desmarcamos un tipo de dirección, por lo que si en el futuro esta política es aplicada, todas las direcciones de este tipo serán borradas del usuario. Lo mismo ocurre si borramos (en lugar de desmarcar) ese tipo de dirección de la política.

 

¿Problemas?

Asociado a la funcionalidad de aplicación de políticas, uno de los problemas más comunes que encontramos en  soporte de RUS, es que el atributo GatewayProxy no es vaciado luego de la aplicación de las políticas. Esto puede causar que las políticas no sean aplicadas y que tampoco funcione la actualización de nuevos usuarios dependiendo del la causa que lo provoque.

Los artículos 286356  y 821743 mencionan algunas de las causas de este problema y como solucionarlas.

 

Para Exchange 2000, recomiendo que la siguiente actualización esté instalada antes de comenzar con cualquier seguimiento de problemas en RUS:

870540  August 2004 Exchange 2000 Server Post-Service Pack 3 update rollup

 

Referencias

328738          How the Recipient Update Service applies recipient policies

http://support.microsoft.com/default.aspx?scid=kb;EN-US;328738

 

Nos gustaría escuchar tus comentarios como forma de mejorar o incluir información de interés en nuestros artículos.

 

Nos vemos en el próximo.