Share all details related to your problem, including any error messages you may have received.
Hello!
We are trying to set and provision one of the onPremisesExtensionAttributes (extensionAttribute1) in Entra ID. onPremisesExtensionAttributes is in the schema and is marked as multi-valued. It is marked as multi-valued in the provisioning policy as well.
We have a FieldValue rule in the provisioning policy that reads the onPremisesExtensionAttributes from the account link and then sets extensionAttribute1 to a string value. It is our understanding that the onPremisesExtensionAttributes attribute is of type map and therefore, the rule should return a map. However, extensionAttribute1 is being provisioned with null as value. The logs show that extensionAttribute1 is being set in the provisioning plan but when provisioning, the connector provisions extensionAttribute1=null. We’ve tried returning the map as a arrayList but the result was the same.
Is it possible to return a map in a provisioning policy for a multi-valued attribute? Or is it even possible to modify the onPremisesExtensionAttributes attribute through IIQ?
All help or information regarding this is appreciated!
Sorry, I realize that my first description of the problem might have been unspecific. I’ll try explaining it again:
In Entra ID there’s an attribute on User objects called “onPremisesExtensionAttributes”. This attribute contains 15 attributes that are called “extensionAttribute1”, “extensionAttribute2” … and so on. These attributes are aggregated into IIQ under the single, multi-valued attribute “onPremisesExtensionAttributes”, see attached image on a application account.
When a access request is made in IIQ for a privileged role in Entra ID, I want to provision a new account to Entra ID and set extensionAttribute1=“PrivilegedAccount” on the newly created Entra ID account. I’ve created a “Create” provisioning policy for accounts in the Entra ID connector in which the “onPremisesExtensionAttributes” attribute is defined and the rule is defined under value settings. The reason for modifying this attribute is to have a flag that indicates that the account is a privileged account. However, this attribute is not being set and there are no error messages. The logs show that the provisioning plan contains the correct value for extensionAttribute1, see image.
To answer your first statement, I figured that the fieldValue rule could return values in a list or map as long as the attribute was marked as multi-valued in the schema and provisioning policy. For example, in the account creation provisioning policy for AD, we return a list for the “proxyAddresses” attribute. This is working
Can you try to send the data in Json format instend a map, somenthing like this:
<entry key=“onPremisesExtensionAttributes” value=“{“extensionAttribute1”: “string”, “extensionAttribute2”: “string”,…“extensionAttribute15”: “string”
}”/>