Stewrds value is not getting fetched correctly in identity cube

Which IIQ version are you inquiring about?

8.4

Hi,
We recently implemented a quicklink to create service account and provision to on prem AD. We were able to fetch all values and create account in AD. But Stewards value is not getting populated correctly in identity cube . I checked syslogs (able tofetch stewards name correctly). ALso in Access request (Identity creation creation) Stewards value is fetched correctly. But In identity cube it displays with guid,name as belwo.
image
I checked identity object config and it is as belwo.

Access Request page:

Can someone suggest what is missing here

It seems you are setting the Stewards attribute to an identity Object. If you want to set the attribute as an Identity you need to make sure the attribute type is set as Identity and not string. Then on identityModel (IdentityObject) set the attribute value with username(name) of the identity object.

1 Like

Hi @Preethi did you check by doing refresh?

1 Like

Hi,
We already set Stewards as Identity object. But still it is not getting updatede correctly.

Can you post the code from Quicklink workflow where you are setting the stewards attribute.

yes.. We did ran refresh but no change

Identity stewardsId = context.getObjectById(Identity.class, stewards);
attrReq = new AttributeRequest();
attrReq.setName(“stewards”);
attrReq.setValue(stewardsId.getName());
attrReq.setOp(ProvisioningPlan.Operation.Set);
attributeRequests.add(attrReq);

I am using identityModel approach where I an setting attributes on identityModel and then use the following step to create a plan.

  <Step action="call:buildPlanFromIdentityModel" name="Create IIQ Plan" posX="148" posY="10" resultVariable="identityPlan">
    <Arg name="identityModel" value="ref:identityModel"/>
    <Description>Build the plan from the Identity Model</Description>
    <Transition to="Compile IIQ Project"/>
  </Step>

I see my plan has AttributeRequest argument specified to set type as identity as shown below.

 <AttributeRequest name="stewards" op="Set" value="1001">
        <Attributes>
          <Map>
            <entry key="type" value="sailpoint.object.Identity"/>
          </Map>
        </Attributes>
      </AttributeRequest>

You can try passing the IdentityObject (stewardsId ) for setValue method.

We just set stewards attribute in provisioning plan and committed the transaction and it worked!
identity.setAttribute(“stewards”, stewardsId.getName());

        plan.setIdentity(identity);
      
       context.startTransaction();
            context.saveObject(identity);
            context.commitTransaction();

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.