Manager Account Attribute Provision

Hello Community,

I need to provision the manager’s phone number into my target source when it’s an account creation.

The manager’s phone number that I need to provision is stored as an account attribute on the source (ManagerPhoneNumber), while on the target account the attribute is called (PhoneNumber)

On an account, we need to provision both PhoneNumber and ManagerPhoneNumber. The ManagerPhoneNumber is simply the PhoneNumber of the identity’s manager.

Is there please a way to reference the manager’s account attribute directly?
I’m not sure how to retrieve this information.

Thank you in advance,

Hi @DivyaL_7 See Get Reference Identity Attribute | SailPoint Developer Community.

Sorry, I didn’t explain my requirement clearly earlier. What you shared is close to what I need, but instead I’d like it in this format. I’ll update my post accordingly:

{
“attributes”: {
“name”: “Cloud Services Deployment Utility”,
“operation”: “getReferenceAccountAttribute”,
“uid”: “manager”,
“attributeName”: “phoneNumber”
},
“type”: “rule”
}, The PhoneNumber of the manager is also an account attribute.. My bad i’ll change it now thank you so much

Hi @DivyaL_7 ,
have you mapped the phoneNumber to identity attribute in identity profile?
if you mapped the attribute in the identity Profile, it would show the users phoneNumber in that attribute. Aftar that you need to use the below transform in the target source to populate the manager value in the create account.
{
“attributes”: {
“name”: “Cloud Services Deployment Utility”,
“operation”: “getReferenceAccountAttribute”,
“uid”: “manager”,
“attributeName”: “identity attribute name you created in the identity profile(technical name)
},
“type”: “rule”
}

Hello, thank you for your answer. No it’s not an identity attribute because the client doesn’t want this particular attribute to show on the identityProfile sadly. Do you have any other solution please other than creating a before provisioning rule.. ?

Hi @DivyaL_7

Yes, you can use the transform getReferenceAccountAttribute to fetch the manager’s account attribute:

{
  "type": "rule",
  "attributes": {
    "name": "Cloud Services Deployment Utility",
    "operation": "getReferenceAccountAttribute",
    "uid": "manager",
    "attributeName": "phoneNumber"
  }
}

  • uid: manager → looks at the identity’s manager

  • attributeName → the manager’s account attribute name (e.g., phoneNumber)

Use this in your provisioning policy for ManagerPhoneNumber.

Im not aware that there is a getReferenceAccountAttribute method in the Cloud Services Deployment Utility. Without populating the phone number onto the Manager’s identity you are likely to be restricted to a before provisioning rule.

Hello, as Jeremy said i didn’t find a getReferenceAccountAttribute either does it exist please?

Hello everyone,

Anybody got an other idea on this topic please?

Many thanks,

You could do this by using the cloud rule: Account Profile Attribute Generator

where you can find manager’s identity and then all accounts (Link) of Manager, iterate through the accounts to get the account from the source, and then use .getAttribute(“PhoneNumber“) on the Link from specific source where you want to get the PhoneNumber from

1 Like

Hi Nithesh Thank you for your answer, do you have an example please? what function do we use on the identity to get its manager ? Thank you

Rule will look something like this:

if (identity != null) {
    Identity managerIdentity = identity.getManager();
    String applicationName = "NAME OF SOURCE TO GET THE PHONE NUMBER FROM [source]";
    if (managerIdentity != null) {
        List managerAccounts = managerIdentity.getLinks();
        for (Object object : managerAccounts) {
            Link managerAccount = (Link) object;
            if (applicationName.equalsIgnoreCase(managerAccount.getApplicationName())) {
                return (String) managerAccount.getAttribute("PhoneNumber");
            }
        }
    }
} 
return null;

Note: You need to add [source] to the end of source name assigned to applicationName

You can refer to the java documentation here for all classes available