Pre-requisites :-
1. Download the VM ware from the following URL:
Download VMware Workstation Player | VMware | IN
Steps:Pre-requisites :-
1. Download the VM ware from the following URL:
Download VMware Workstation Player | VMware | IN
Steps:Steps:
1. Go to MySQL installation directory then until the bin
Ex: C:\Program Files\MySQL\MySQL Server 8.0\bin
2. Open cmd from the above path
(OR)
Navigate to the Windows icon, search for cmd, and click on Command Prompt
3. Enter the following command in cmd
cd C:\Program Files\MySQL\MySQL Server 8.0\bin
4. mysql -u root -p (mysql -u reddy -p)
NOTE: root is the default username, if you have used a custom username, as mentioned like above
5. Enter the password: *******
6. show databases;
(this command will display the lists of databases)
======================================================================
Follow the below URL's for installing MYSQL ::-
# How to Install MySQL on Windows 10 (Step-By-Step Guide) (smarttechnicalworld.com)
# Install MySQL on Windows 10 Step by Step | OnlineTutorialsPoint
# How to download and install MySQL on Windows 10? (roseindia.net)
# How To Install MySQL in Windows 10 - Step-By-Step Tutorials - MobyGeek.com
# How To Install MySQL in Windows 10?(Easy Step By Step Guideline) - FixGuider
# IdentityService : A service layer that deals with identities.
IdentityService(SailPointContext context) : Constructor.
# WorkflowContext :
BuildMap Rule :
public ProvisioningPlan buildMoveADAccountsPlan(WorkflowContext wfc)
throws GeneralException {
Logger ruleLog = Logger.getLogger("RuleLog");
if (ruleLog.isDebugEnabled()) ruleLog.debug("Entering into buildMoveADAccountsPlan rule");
Attributes args = wfc.getArguments();
String op = Util.getString(args, "op");
if ( op == null ){
throw new GeneralException("Operation (op) must be specified.");
}
Custom settings = context.getObjectByName(Custom.class, "Custom Settings");
ProvisioningPlan plan = new ProvisioningPlan();
String identityName = Util.getString(args, "identityName");
if (ruleLog.isDebugEnabled()) ruleLog.debug("Processing identity " + identityName);
Identity identity = context.getObjectByName(Identity.class, identityName);
if (null != identity) {
plan.setIdentity(identity);
// Get a list of AD applications
List appList = getADApps();
IdentityService identityService = new IdentityService(context);
for (Application app : appList) {
List links = identityService.getLinks(identity, app);
if ((null != links) && !links.isEmpty()) {
for (Link link : links) {
String nativeIdentity = link.getNativeIdentity();
String newOU = null;
if (op.equals("Disable")) {
if (nativeIdentity.toLowerCase().endsWith("dc=mightypedia,dc=com")){
newOU = settings.get("pediaADDisabledUsersOU");
}
}
}
}
if (ruleLog.isDebugEnabled()) {
ruleLog.debug("Moving to " + newOU);
}
if (null != newOU && ! newOU.equalsIgnoreCase(getParentContainerDN(nativeIdentity))) {
AccountRequest acctReq = new AccountRequest();
acctReq.setApplication(link.getApplicationName());
acctReq.setInstance(link.getInstance());
acctReq.setNativeIdentity(link.getNativeIdentity());
acctReq.setOperation(AccountRequest.Operation.Modify);
AttributeRequest attReq = new AttributeRequest();
attReq.setName("AC_NewParent");
attReq.setValue(newOU);
attReq.setOp(ProvisioningPlan.Operation.Set);
acctReq.add(attReq);
plan.add(acctReq);
}
}
}
}
}
if (ruleLog.isDebugEnabled()) {
ruleLog.debug("Returning plan: " + plan.toXml());
}
return plan;
}
---------------------------------------------################----------------------------------------------
public List getADApps() {
Logger ruleLog = Logger.getLogger("RuleLog");
List appList = new ArrayList();
QueryOptions qo = new QueryOptions();
qo.addFilter(Filter.eq("connector", "sailpoint.connector.ADLDAPConnector"));
Iterator it = context.search(Application.class, qo);
while (it.hasNext()) {
Application thisApplication = it.next();
if (ruleLog.isDebugEnabled()) ruleLog.debug("Found Active Directory application " + thisApplication.getName());
appList.add(thisApplication);
}
if (appList.isEmpty()) {
ruleLog.warn("No Active Directory applications found");
}
return appList;
}
Steps :
1. Login to debug page
2. Navigate to Configuration Objects and click on System Configuration
search for syslog_extension then add entry
<entry key="timeMachineEnabled" value="true"/>
3. Search following URL in browser :
SailPoint IdentityIQ - Time Machine
High Level Steps of developing Custom Tasks :-
1. Create TaskDefinition.xml file then import into IIQ
Note : Define a task definition with input and return arguments
2. Develop a Java code and place it in following path :
C:\Program Files\Apache Software Foundation\Tomcat 9.0\webapps\idenityiq\WEB-INF\classes\sailpoint
public class Demo extends AbstractTaskExecutor {
public void execute(SailPointContext sailpointContext, TaskSchedule taskSchedule, TaskResult taskResult, Attributes args) throws Exception {
String output = "output";
String appName = (String) args.get("application");
result.setAttribute(output, "This is Prasad Reddy" + appName);
}
public boolean terminate() {
return false;
}
NOTE : Create custom directory in above path then place the java file in custom directory.
3. Restart the application server (Apach Tomcat Server)
The Workflow tag identifies the name and type of the workflow.
<Workflow explicitTransitions="true" name="WF-Training Hello World Workflow"
type="IdentityUpdate">
# name: Specifies the name of the variable
IAM sets up the employee's account so they can log in and access the application with their credentials. IGA makes sure that access requ...