Forefront Identity Manager 2010 R2 build 4.1.3599.0 released

Today, Wednesday September 3rd, saw Microsoft release a new hotfix rollup package (build 4.1.3599.0) for Forefront Identity Manager 2010 R2.  The official documentation for this build can be found on the Microsoft support website under knowledgebase (KB) article 2980295.  Download link is here.  This build supersedes 4.1.3559.0.

The hotfix contains a number of updates:

  • 9 BHOLD fixes
  • 1 FIM CM fix
  • 1 FIM CM feature
  • 3 FIM Service & Portal fixes
  • 1 FIM Sync fix

Full details of the update, duplicated from the KB for posterity, follow.  Hit the KB for the known issues and other details.


Issue 1

Users who are in inherited supervisor roles for operational units (OUs) may not have supervisor roles in subordinate OUs.

Issue 2

Roles that are directly assigned to a user are also listed under the inherited roles node.

Issue 3

When multiple attribute-based authorization (ABA) rules that are specified in BHOLD Core assign permissions to a user, and the user’s attributes change and are synched in from BHOLD FIM Provisioning Access Management Connector, the user may not receive all of his or her permissions.

Issue 4

In the BHOLD Analytics module, the impact operation is not available after a ruleset that includes a filter with a restrictive type is set. After this fix is applied, pressing the Impact button displays the impact of the rules.

Issue 5

The following error message may be logged in the Application log on a computer where BHOLD Core is installed:

Error when executing ‘EXEC ProcessQueueCommand30RoleBiased’ \n\n Reason System.Data.OleDb.OleDbException: Transaction count after EXECUTE indicates a mismatching number of BEGIN and COMMIT statements. Previous count = 0, current count = 1.
at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
at System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
at BHOLD.B1ServiceLibrary.Queue.ConnectorQueueDal.RetrieveQueueEntries(Int32 applicationId) in d:\Builds\52\5\Sources\imp\src\Access Management\Core\B1ServiceBC\Queue\ConnectorQueueDal.cs:line 122′

Issue 6

When the FIM Integration module is being used, and the BHOLD self-service features are incorporated into the FIM portal, some column headings may appear to be truncated.

Issue 7

In BHOLD Attestation, the notification template editor toolbar buttons are not displayed correctly.

Issue 8

When you apply this hotfix, BHOLD Attestation notification email messages contain a URL that requires one fewer click by the end-user in order to navigate to the page to perform the attestation.

Issue 9

This hotfix adds a UserUpdate function to the BHOLD Core scripting web service.

Certificate management

Issue 1

Assume that a certificate is enrolled by using certificate template CT1 in profile template PT1, and then CT1 is replaced by another certificate template. If CT1 is removed, the certificate is revoked, and no new certificate is created from PT1. Additionally, later renewals of the certificate fail and a cryptic error message is returned.

With the profile template model, you cannot avoid this issue. Removal of the certificate template was done for a reason, and the system cannot arbitrarily determine whether the user can still enroll for the certificate by using that template.

The system now returns a user-friendly message, telling you to enroll instead of renew. This change makes sure that the certificate templates that are currently available in the profile template are used. Additionally, this action is logged on the FIM Certificate Manager server’s log file with all the necessary information.

Feature 1

Existing users in the FIM Certificate Management database, who have associated profiles and certificates, cannot be migrated to a different Active Directory user.

This new functionality is exposed through the clmutil.exe command prompt utility.

CLMUtil takes as input the original user’s UUID and the current user’s UUID. Records in the following tables are updated to the new UUID: profiles, certificates, and smart cards. Additionally, the UserNameCache table is updated if this is necessary, attaching the user name to the new UUID.

Command syntax:

ClmUtil -migrateuser -oldUserId “oldUserUuid” -newUserId “newUserUuid”


Migrate a user’s profile, certificate and smart cards records – from a user who has an old uuid to new uuid.


ClmUtil -migrateuser -oldUserId 11111111-2222-3333-4444-d602b49480b0 -newUserId 11111111-2222-3333-4444-2c68e64bba93

FIM service and portals

Issue 1

This hotfix updates the FIM Password Reset and Password Registration Portal with additional UI changes that apply to customers who are customizing these portals in compliance with Section 508 of the U.S. Federal Rehabilitation Act.

Symptoms include the following:

  • On the “Your current Password” page, the Password text box is labeled incorrectly.
  • On the “Register your Answers” page, none of the text boxes are labeled correctly.
  • The following image has no alt tag:
    <img src=”images/wait_animationa.gif” />
  • When a validation error is encountered for the form fields on the “Your Current Password” and “Register Your Answers” pages, there is a message that’s displayed to the user. However, there is no indication to Assistive Technology that this message has appeared, no shift of focus, and the graphic that indicates an error to visual users is inaccessible. Therefore, it’s not apparent that this is an error message because it is displayed only as flat text.
  • The customized logo and text in the title is inaccessible to Assistive Technology.

Changes after the fix is applied:

  • Assistant Technology now fully reads all pages in the SSPR portal, and the user is informed if an error occurs.
  • The banners in Password Reset and Registration portals now have a tooltip.

Issue 2

When you configure a UocDropDownList control in a Resource Control Display Configuration with string values, the list of values in the control are not displayed in alphabetical order.

This fix adds the Sorted property to the UocDropDownList control. When the Sorted property is set to True, the items are sorted in alphabetical order.


<my:Control my:Name=”EmployeeType” my:TypeName=”UocDropDownList” my:Caption=”{Binding Source=schema, Path=EmployeeType.DisplayName}” my:Description=”{Binding Source=schema, Path=EmployeeType.Description}” my:RightsLevel=”{Binding Source=rights, Path=EmployeeType}”>
<my:Property my:Name=”Sorted” my:Value=”True”/>
<my:Property my:Name=”Required” my:Value=”{Binding Source=schema, Path=EmployeeType.Required}”/>
<my:Property my:Name=”ValuePath” my:Value=”Value”/>
<my:Property my:Name=”CaptionPath” my:Value=”Caption”/>
<my:Property my:Name=”HintPath” my:Value=”Hint”/>
<my:Property my:Name=”ItemSource” my:Value=”{Binding Source=schema, Path=EmployeeType.LocalizedAllowedValues}”/>
<my:Property my:Name=”SelectedValue” my:Value=”{Binding Source=object, Path=EmployeeType, Mode=TwoWay}”/>

Issue 3

In the FIM Identity Management Portal that has the language pack installed, the display names of approval objects are not completely translated.

Be aware that the string translation for objects that are created by the FIM Service in the FIM Service database is performed according to the FIM Service account locale that was in effect when the object was created, and it is not affected by client browser locale. To change the language that’s used for string translation to a setting other than English, log on to each computer where the FIM Service is installed as the FIM Service account, and then set the locale for this account through Control Panel.

FIM Synchronization Service

Issue 1

Starting with build 4.1.3508.0, audit log files on Export run profile steps do not include reference attribute values.