How to add filtering conditions while aggregating

Hello everyone, I’m aggregating from a source and I want to filter accounts that I take in input with a filter. I found this guide:
[IdentityNow Account Filtering during Account Aggregation - Compass](https://community.sailpoint.com/t5/IdentityNow-Wiki/IdentityNow-Account-Filtering-during-Account-Aggregation/ta-p/142873) .
but i don’t understand what to put inside the JSON Body. This is the example:
[ { "op": "add", "path": "/connectorAttributes/filterString", "value": "( type != \"Employee\" )" } ]

But i don’t know what put in the type if forx example i want to filter accounts based on the attribute “X” that has a value “1”. Where i have to put this info? Thanks everyone.

HI @s_tartaglione ,

Filters can be added in the UI itself, but it depends on connector type you are using. See below, it filters out inactive users during aggregation. Could you please help with the connector type?

I’m using HCM Oracle connector that hasn’t the filter string option

Source filters can be used when the configuration process does not provide a for filtering. While this is quite powerful, the drawback is that all accounts will be pulled back to ISC for it to decide what to load. That is why Theja was suggesting a filter string if possible.

However, it does not look like the HCM connector supports filtering by attributes, so your option is the source filter.

You are going to patch your source configuration with the something like:

[ { "op": "add", "path": "/connectorAttributes/filterString", "value": "( X != \"1\" )" } ]

This string would tell ISC to filter out any users who attribute X does not equal 1. (The process is looking for what accounts to remove not what to keep).

2 Likes

I’m trying to patch the source, but it returns a 405 Error whit this info in the response body: { "errorName": "NotSupportedException", "errorMessage": "RESTEASY003065: Cannot consume content type", "trackingId": "4180c13204d243ac82b11ac25079cd99" }

Make sure you select Content-Type in headers.

Ok now I’m able to patch the source, but the accounts are not filtered by the filter string that I inserted. I want to filter on a specific attribute of the account, I have to specify the column of the account coming from the source or the attribute name on which it will be mapped?

Yes, please specify the column name and attribute value as same as they are from source.

So the value of the column where the account are read is: "WORKRELATIONSHIP_PRIMARY_FLAG ", so i want to filter all account with that attribute with value N, I applied this filterString but the connector isn’t able to read anything. I have uploaded on the source many accounts with that column both with Y and N value.

[
  {
    "op": "add",
    "path": "/connectorAttributes/filterString",
    "value": "( WORKRELATIONSHIP_PRIMARY_FLAG != \"N\" )"
  }
]

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