The Management Agent Creates Unwanted Attribute Updates in the Connected Directory (263952)



The information in this article applies to:

  • Microsoft Metadirectory Services 2.1
  • Microsoft Metadirectory Services 2.2

This article was previously published under Q263952

SYMPTOMS

A Management Agent (MA) unexpectedly overwrites the attribute values or sends modifications to the connected directory. The attribute flow is properly configured for the attributes, but the flow rules do not seem to be successfully applied when the MA is run.

CAUSE

This behavior can occur because of incorrectly written output templates in the MA. The output parsing templates can flow unwanted attributes to the connected directory if written incorrectly.

RESOLUTION

To resolve this behavior, use the correct syntax for the output templates:
TelephoneNumber: $CD.telephoneNumber
				

When you have the correct $CD attribute defined in the templates, you can use the following recommended attribute flow rule:
$CD.TelephoneNumber = $MV.Mobile
				
The flow of the value of the attribute should be controlled by the attribute flow rules and should not be circumvented by the format of the output template. If you follow the preceding examples, an attribute can only flow out to the connected directory when the synchronization engine evaluates the attribute flow rules and calculates that the value in the $CD attribute has changed. The most reliable and efficient change control configuration is to use the attribute flow only when necessary and only flow according to the specified flow rules.


An example of a correct value or label pair output template:
name: $cd.Name
comment: $cd.comment
telephoneNumber: $cd.telephoneNumber
fax: $cd.facsimileTelephoneNumber
email: $cd.mail
				
With the correct template, the telephonenumber attribute is correctly modified based on the attribute flow rule, and the other connected directory attribute values remain unchanged.

MORE INFORMATION

The output templates can have defined attributes, such as:
TelephoneNumber: $MV.telephoneNumber
				

In this example, any export of this record includes the metaverse telephone number which is sent to the connected directory for updating. When the connected directory is updated, the Importt.exe file (the synchronization engine) uses either the add, modify, or delete output templates. Even if you want something other than the metaverse telephone number to be exported (and you have defined it in an attribute flow), the end result is the $mv.telephonenumber attribute being exported. The value is sent out unconditionally.

The following example has also incorrect syntax:
GivenName: $v_givenName
				
The same logic is applied to using a variable as to define the value. If you define a variable, the value of the variable is always sent out to the connected directory, regardless of the flow rules you specify.

An example of an incorrect value or label pair output template:
name: $mv.Name
comment: $mv.comment
telephoneNumber: $mv.telephoneNumber
fax: $mv.facsimileTelephoneNumber
email: $mv.mail
GivenName: $v_givenName
				

NOTE: This behavior is most likely to be found in a custom MA because, in this type of MA, the template has to be written from the very beginning. In contrast, in all of the default MAs which are shipped in the product, the output templates are already coded. However, this behavior is not absolutely limited to custom MAs.

If your parsing templates are correct, the problem may be with the configuration of the attribute flow rules.

For additional information about attribute flow, click the article number below to view the article in the Microsoft Knowledge Base:

259050 Unwanted Attribute Updates by Management Agent


Modification Type:MinorLast Reviewed:1/25/2006
Keywords:kbenv kbprb KB263952