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)
Comments

Not tested in my environment yet but the idea sounds great, thanks a lot.

Is it possible to create custom right from IIQ. Ex--> Ability to view only Events and Attributes tab in Identity

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