Getting results of all Identities from every Applications

Hello Experts and Community,

Based on the images, I am able to retrieve the list of identities belonging to specific Applications which is hard coded. Is there a way to retrieve all identities belonging to all Applications in the IdentityIQ portal as I have more than 10 Applications?

image

image

Rather than querying for Link objects and resolving the Identity from the Link, a more efficient approach would be to use the links.application or links.application.name filter for Identity objects.

import sailpoint.api.IncrementalObjectIterator;
...
Filter idtLinks = Filter.eq("links.application", app);
...
Iterator it = new IncrementalObjectIterator(context, Identity.class, qo);

If you need to do this for multiple applications, you would do a pre-search on the applications and loop through the Identity search for each application. If you do this, be mindful of memory usage and decache periodically.

Hello Brian,

If Iā€™m not wrong, the solution you provided should be:

Iterator it = new IncrementalObjectIterator(context, Identity.class, idtLinks); right?

After trying your method, I received this error:

Exception running rule: BeanShell script error: bsh.EvalError: Sourced file: inline evaluation of: import java.util.*; import sailpoint.object.*; import sailpoint.object.Id . . . '' : Typed variable declaration : Constructor error: Can't find constructor: sailpoint.api.IncrementalObjectIterator(sailpoint.server.InternalContext, java.lang.Class, sailpoint.object.Filter$LeafFilter) in class: sailpoint.api.IncrementalObjectIterator : at Line: 31 : in file: inline evaluation of: import java.util.; import sailpoint.object.; import sailpoint.object.Id . . . ā€˜ā€™ : new IncrementalObjectIterator ( context , Identity .class , idtLinks )
BSF info: Test Inactive at line: 0 column: columnNo

Which I think is pointing towards IncrementalObjectIterator method

Apologies, I should have clarified that the 3rd argument in that method. Here is the constructor:

new IncrementalObjectIterator(SailPointContext context, java.lang.Class<T> cls, QueryOptions options)

Hello Brian,

In fact i received a new error I checked the spacing but no issue. Not sure if i did correctly as you told.

Exception running rule: BeanShell script error: bsh.ParseException: Parse error at line 30, column 64. Encountered: context BSF info: Test Inactive at line: 0 column: columnNo

The line 30 is pointing towards around line 72 and 73 of the code I shown in the image.