package sudhiridm
import java.util.HashMap;
import java.util.HashSet;
import java.util.Hashtable;
import java.util.List;
import java.util.Set;
import oracle.iam.identity.usermgmt.api.UserManager;
import oracle.iam.identity.usermgmt.vo.User;
import oracle.iam.platform.OIMClient;
import oracle.iam.platform.entitymgr.vo.SearchCriteria;
import oracle.iam.provisioning.api.ApplicationInstanceService;
import oracle.iam.provisioning.api.ProvisioningService;
import oracle.iam.provisioning.vo.Account;
import oracle.iam.provisioning.vo.AccountData;
import oracle.iam.provisioning.vo.ApplicationInstance;
public class AccountProvisioning {
public static void main(String[] args) throws Exception {
System.setProperty("java.security.auth.login.config", "F:\\designconsole\\config\\authwl.conf");
System.setProperty("java.security.policy", "F:\\designconsole\\config\\xl.policy");
System.setProperty("APPSERVER_TYPE", "wls");
Hashtable env = new Hashtable();
env.put("java.naming.provider.url", "t3://180.00.101.00:14000/");
env.put("java.naming.factory.initial", "weblogic.jndi.WLInitialContextFactory");
OIMClient oimClient = new OIMClient(env);
oimClient.login("xelsysadm", "ancd123");
System.out.println("Connection to oim successfully established");
ApplicationInstanceService aiSvc = oimClient.getService(ApplicationInstanceService.class);
ProvisioningService provSvc = oimClient.getService(ProvisioningService.class);
UserManager usrMgr = oimClient.getService(UserManager.class);
String appInstanceName = "FirstProvAppInst";
// Find the user
SearchCriteria criteria = new SearchCriteria("User Login",
"KAGRWAL", SearchCriteria.Operator.EQUAL);
Set retSet = new HashSet();
retSet.add("usr_key");
retSet.add("User Login");
retSet.add("First Name");
retSet.add("Last Name");
List<User> users = usrMgr.search(criteria, retSet, null);
System.out.println(users);
for (User u : users) {
ApplicationInstance ai = aiSvc.findApplicationInstanceByName(appInstanceName);
HashMap<String, Object> parentData = new HashMap<String, Object>();
parentData.put("UD_OID_USR_LAST_NAME","Agrwal");
parentData.put("UD_OID_USR_ORG_DN","53~ou=People,dc=ojas,dc=com");
System.out.println(parentData);
AccountData accountData = new AccountData(ai.getAccountForm().getFormKey() + "", "", parentData);
Account account = new Account(ai, accountData);
System.out.println("Provisioning app instance " + appInstanceName + " to user " + u.getEntityId());
provSvc.provision(u.getEntityId(), account);
}
oimClient.logout();
System.exit(0);
}
}
import java.util.HashMap;
import java.util.HashSet;
import java.util.Hashtable;
import java.util.List;
import java.util.Set;
import oracle.iam.identity.usermgmt.api.UserManager;
import oracle.iam.identity.usermgmt.vo.User;
import oracle.iam.platform.OIMClient;
import oracle.iam.platform.entitymgr.vo.SearchCriteria;
import oracle.iam.provisioning.api.ApplicationInstanceService;
import oracle.iam.provisioning.api.ProvisioningService;
import oracle.iam.provisioning.vo.Account;
import oracle.iam.provisioning.vo.AccountData;
import oracle.iam.provisioning.vo.ApplicationInstance;
public class AccountProvisioning {
public static void main(String[] args) throws Exception {
System.setProperty("java.security.auth.login.config", "F:\\designconsole\\config\\authwl.conf");
System.setProperty("java.security.policy", "F:\\designconsole\\config\\xl.policy");
System.setProperty("APPSERVER_TYPE", "wls");
Hashtable env = new Hashtable();
env.put("java.naming.provider.url", "t3://180.00.101.00:14000/");
env.put("java.naming.factory.initial", "weblogic.jndi.WLInitialContextFactory");
OIMClient oimClient = new OIMClient(env);
oimClient.login("xelsysadm", "ancd123");
System.out.println("Connection to oim successfully established");
ApplicationInstanceService aiSvc = oimClient.getService(ApplicationInstanceService.class);
ProvisioningService provSvc = oimClient.getService(ProvisioningService.class);
UserManager usrMgr = oimClient.getService(UserManager.class);
String appInstanceName = "FirstProvAppInst";
// Find the user
SearchCriteria criteria = new SearchCriteria("User Login",
"KAGRWAL", SearchCriteria.Operator.EQUAL);
Set retSet = new HashSet();
retSet.add("usr_key");
retSet.add("User Login");
retSet.add("First Name");
retSet.add("Last Name");
List<User> users = usrMgr.search(criteria, retSet, null);
System.out.println(users);
for (User u : users) {
ApplicationInstance ai = aiSvc.findApplicationInstanceByName(appInstanceName);
HashMap<String, Object> parentData = new HashMap<String, Object>();
parentData.put("UD_OID_USR_LAST_NAME","Agrwal");
parentData.put("UD_OID_USR_ORG_DN","53~ou=People,dc=ojas,dc=com");
System.out.println(parentData);
AccountData accountData = new AccountData(ai.getAccountForm().getFormKey() + "", "", parentData);
Account account = new Account(ai, accountData);
System.out.println("Provisioning app instance " + appInstanceName + " to user " + u.getEntityId());
provSvc.provision(u.getEntityId(), account);
}
oimClient.logout();
System.exit(0);
}
}