I am trying to input an account filter string, and it seem to not work. My condition is to ignore if logon doesnt contain sailpoint.net and if market is abc or market is cde
can someone help me because this filter throws an error
“account.filterString”: “!(login.endsWithIgnoreCase("sailpoint.net")) and !(market == "abc" or market == "cde")”
I’m not entirely sure I know exactly what you’re trying to achieve. Do you ignore if the account doesnt contain sailpoint.net and the account is in one of the markets, or to ignore accounts not containing sailpoint.net and ignore accounts being in one of the markets?
You then need to turn your ignore statement into an include statement:
Scenario 1:
Return accounts that end sailpoint.net OR are not in market abc or cde
Scenario 2:
Return accounts that end sailpoint.net AND are not in market abc or cde
I spoke to @Soundary regarding her resulting filter and despite the filter imports the right accounts, I noticed this is NOT consistent with the documentation and with filters we implemented for other sources (e.g.: Okta connector).
Following the docs, account.filterString should be used to STOP the import of matching accounts:
Accounts which match the filter string will be filtered. Accounts which do not match, will be sent to IdentityNow as normal.
Hence if the filter is set to "market != \"abc\"" only accounts whose market isabc will be imported.
When such filter was applied to a WebServices connector, the result was the opposite: all accounts with market different than abc were imported.
This leads to believe that account.filterString implementation for WebServices has a bug which is the reason it doesn’t bring the results that @Soundary was expecting to receive. @colin_mckibben, who do we report this issue?