How we can create a custom capability in IdentityIQ?
Hi All,
This document is a helping GUI tool to create custom capability having your required set of rights in it.
Issue:
We have a requirement to create a custom capability having set of selected rights for admins and out box IIQ does not have that, so i have created my own program to create that.
Below is the workflow having very basic requirement where I am giving name of new capability and selecting rights and submitting the request. User can extend this program and add check points they need.
You can create a quickLink and link this workflow...
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE Workflow PUBLIC "sailpoint.dtd" "sailpoint.dtd">
<Workflow explicitTransitions="true" name="Create Custom Capability" type="LCMProvisioning">
<Description>This process is to Create Custom Capability</Description>
<Step icon="Start" name="Start">
<Transition to="CreateCustomCap"/>
</Step>
<Step icon="Stop" name="Stop" posX="299" posY="51"/>
<Step icon="Default" name="CreateCustomCap" posX="204" posY="123">
<Approval name="Create Custom Capability" owner="ref:launcher" return="capName,rights" send="">
<Form name="Create Custom Capability">
<Attributes>
<Map>
<entry key="pageTitle" value="Create Custom Capability"/>
</Map>
</Attributes>
<Button action="next" label="Submit"/>
<Button action="cancel" label="Cancel"/>
<Description>Create Custom Capability</Description>
<Section label="Create Capability">
<Field displayName="Capability Name:" name="capName" type="string"/>
<Field displayName="Rights:" multi="true" name="rights" type="sailpoint.object.SPRight"/>
</Section>
</Form>
</Approval>
<Transition to="checkSelectedValues"/>
</Step>
<Step icon="Default" name="checkSelectedValues">
<Script>
<Source>
import sailpoint.object.*;
import java.util.*;
ArrayList rightsList=new ArrayList();
System.out.println("rights: "+rights);
for(int j=0; j < rights.size(); j++)
{
SPRight spRtsObj=(SPRight )context.getObjectById(SPRight.class,rights.get(j));
rightsList.add(spRtsObj);
}
Capability cap = new Capability();
cap.setName(capName);
cap.setDisplayName(capName);
cap.setRights(rightsList);
System.out.println(cap.toXml());
context.saveObject(cap);
context.commitTransaction();
System.out.println("Capability "+capName+" has been created.");
</Source>
</Script>
<Transition to="Stop"/>
</Step>
</Workflow>
Hopefully this will help lots of people..
Also, refer How we can create custom capability in IIQ
Thanks
Janmejay
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Content to Moderator
Not tested in my environment yet but the idea sounds great, thanks a lot.
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Content to Moderator
Is it possible to create custom right from IIQ. Ex--> Ability to view only Events and Attributes tab in Identity