cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How we can create a custom capability in IdentityIQ?

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 &lt; 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

Labels (1)
Version history
Revision #:
2 of 2
Last update:
‎Jul 26, 2023 05:20 PM
Updated by: