Which IIQ version are you inquiring about?
8.4p3
Share all details about your problem, including any error messages you may have received.
Hello,
I’m working on an integration involving an old Active Directory environment where the attribute mS-DS-ConsistencyGuid is already populated on user accounts.
My goal is to synchronize this value into a new Active Directory during account creation.
What I’ve done so far
I defined mS-DS-ConsistencyGuid as a string attribute in both application schemas.
On the new AD application, I added an Account Creation Provisioning Policy field:
<Field displayName="mS-DS-ConsistencyGuid" name="mS-DS-ConsistencyGuid" type="string">
<RuleRef>
<Reference class="sailpoint.object.Rule" name="AD - Account Creation - Field Value Rule"/>
</RuleRef>
</Field>
Rule logic (simplified)
java
case "mS-DS-ConsistencyGuid": {
IdentityService is = new IdentityService(context);
Application oldAD = context.getObjectByName(Application.class, "Old AD");
List<Link> oldADLinks = is.getLinks(identity, oldAD);
Link mainAD = null;
for (Link l : oldADLinks) {
if (identity.getName().equals(l.getAttribute("sAMAccountName"))) {
mainAD = l;
break;
}
}
if (mainAD == null) return;
return mainAD.getAttribute("mS-DS-ConsistencyGuid");
}
The issue
In the old AD, the attribute looks like this:
mS-DS-ConsistencyGuid: {11111111-2222-3333-4444-555555555555}
But in the new AD, the attribute in the account is this:
mS-DS-ConsistencyGuid: {5c31315c-3131-315c-315c-31315c32325c}
It seems the second value is the hex-encoded representation of the ASCII characters, meaning AD is interpreting the string incorrectly.
From what I’ve researched, mS-DS-ConsistencyGuid is stored as a System.Byte[]in Active Directory.
I tried:
-
Removing
{} -
Removing
- -
Passing the GUID as a raw string
-
Converting the string to
byte[]in a Before Provisioning Rule
but none of these attempts worked.
My questions
-
Is defining this attribute as a string in the schema correct, or should it be defined as a another type?
-
Is there a successful example of provisioning a GUID into AD?
-
If the attribute must be binary, what is the correct way to convert the GUID string into the byte[] format that AD expects?
Any guidance or examples would be greatly appreciated.


