⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ldaptest.java

📁 VC++
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
package com.sinosoft.security.util.mazingldaptools;

import java.util.Date;
import java.util.Enumeration;

import netscape.ldap.LDAPAttribute;
import netscape.ldap.LDAPAttributeSet;
import netscape.ldap.LDAPDN;
import netscape.ldap.LDAPEntry;
import netscape.ldap.LDAPException;
import netscape.ldap.LDAPReferralException;
import netscape.ldap.LDAPSearchResults;
import netscape.ldap.LDAPUrl;

import com.sinosoft.security.Constants;
import com.sinosoft.security.SecurityFactory;
import com.sinosoft.security.SmileIDFactory;
import com.sinosoft.security.manager.ApplicationManager;
import com.sinosoft.security.manager.BaseObjectManager;
import com.sinosoft.security.manager.OrganizationManager;
import com.sinosoft.security.manager.PermissionManager;
import com.sinosoft.security.manager.PersonManager;
import com.sinosoft.security.manager.RoleClassManager;
import com.sinosoft.security.manager.RoleManager;
import com.sinosoft.security.model.Application;
import com.sinosoft.security.model.BaseObject;
import com.sinosoft.security.model.Organization;
import com.sinosoft.security.model.Permission;
import com.sinosoft.security.model.Person;
import com.sinosoft.security.model.Role;
import com.sinosoft.security.model.RoleClass;
import com.sinosoft.security.provider.ldap.coresupports.LDAPConnectionPool;
import com.sinosoft.security.provider.ldap.coresupports.LDAPWaitor;
import com.sinosoft.security.util.MD5;
import com.sinosoft.security.util.MazingRandom;

/**
 * <p>
 * Title:
 * </p>
 * 
 * <p>
 * Description:
 * </p>
 * 
 * <p>
 * Copyright: Copyright (c) 2005
 * </p>
 * 
 * <p>
 * Company:
 * </p>
 * 
 * @author not attributable
 * @version 1.0
 */
public class LdapTest {
	public LdapTest() {
	}

	static public void initConnection() {
		try {
			LDAPConnectionPool ldapPool = new LDAPConnectionPool(2, 2,
					"192.168.4.160", 4032, "cn=orcladmin", "welcome", "false");
			LDAPConnectionPool.setInstance(ldapPool);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	static public void main(String[] args) throws Exception {
		initConnection();
		// new LdapTest().MetasrvTypePatch();
		// new LdapTest().addRoles();
		// new LdapTest().deleteRoleClass();
		// new LdapTest().BaseObjectManagerTest();
		// new LdapTest().PersonManagerTest();
		// new LdapTest().delTree();
		// new LdapTest().PersonManagerTest();
		new LdapTest().delTree();
		// new LdapTest().addWhole();

		// 应用模块/
		// new LdapTest().impApplication();

		// 权限
		// new LdapTest().impPermissions();

		// 角色模板
		// new LdapTest().impRoleClass();

		// 角色
		// new LdapTest().impRole();

	}

	public void addWhole() throws Exception {
		for (int i = 0; i < 10000; i++) {
			String str = SmileIDFactory.getRandomID();
			createPerson(str, str);
		}

	}

	public String makeMD5Pwd(String pwd) {
		MD5 mymd = new MD5();
		return mymd.getMD5ofStr(pwd);
	}

	public void addRoles() throws Exception {
		String[] rclstr = new String[] { "downloadman", "editallman",
				"printallman", "queryman", "useman" };
		Organization[] orgs = SecurityFactory.getOrganizationManager()
				.getAllOrgs();
		RoleClassManager rclmrg = SecurityFactory.getRoleClassManager();
		String str = "";
		for (int i = 0; i < rclstr.length; i++) {
			RoleClass parent = rclmrg.getRoleClassByEName(rclstr[i]);
			if (i == 0)
				str = "信息下载人员";
			if (i == 1)
				str = "信息编辑人员";
			if (i == 2)
				str = "信息打印人员";
			if (i == 3)
				str = "信息查询人员";
			if (i == 4)
				str = "信息使用人员";
			for (int j = 0; j < orgs.length; j++) {
				Role newone = (Role) SecurityFactory.getBean("Role");
				newone.setRoleClass(parent);
				newone
						.setManageLevel(Constants.ManageLevel.SMILE_MANAGE_LEVEL_SUB);
				newone.setManageOrg(orgs[j]);
				newone.setEName(orgs[j].getEName() + rclstr[i]);
				newone.setName(orgs[j].getName() + str);
				newone.save();
			}

		}

	}

	public void createPerson(String ename, String name) throws Exception {
		Person man = (Person) SecurityFactory.getBean("Person");
		// man.setAddress("瞅啥呀~~~");
		// man.setPersonPasswd("liulaogen123");
		// man.setChangePasswd(false);
		// man.setCreateDate(new Date(System.currentTimeMillis()));
		// man.setDescription("马大姐,就一好管闲时的闲人儿~~");
		// man.setEmail("hanlin@sinosoft.com.cn");
		man.setEName(ename);
		// man.setHomePhone("66429988");
		// man.setValid();
		// man.setMailPasswd("LaoGen.Liu");
		// man.setMobilePhone("1234556");
		// man.setModifyDate(new Date(System.currentTimeMillis()));
		man.setName(name);
		man.setNeverChangePasswd(true);
		OrganizationManager orgmgr = (OrganizationManager) SecurityFactory
				.getBean("OrganizationManager");
		man
				.setParentOrg(orgmgr
						.getOrgByDN("ou=beijinggov,cn=Organization,dc=sinosoft,dc=com"));
		// man.setPhone("72570007");
		// man.setProvince("东北");
		man.setSurName("马大姐");
		man.save();

	}

	public void deletePerson(String ename) throws Exception {
		PersonManager permrg = (PersonManager) SecurityFactory
				.getBean("PersonManager");

		Person killman = permrg.getPersonByEName(ename);
		if (killman != null)
			killman.delete();

	}

	public void deleteApplication() throws Exception {
		ApplicationManager appmrg = (ApplicationManager) SecurityFactory
				.getBean("ApplicationManager");
		Application killapp = appmrg
				.getAppByDN("cn=OA_Document,cn=OA,cn=Module,cn=Application,dc=taikanglife,dc=com");
		if (killapp != null)
			killapp.delete();
	}

	public void deletePermission() throws Exception {
		PermissionManager permmrg = (PermissionManager) SecurityFactory
				.getBean("PermissionManager");
		Permission killper = permmrg
				.getPermByDN("cn=PigFeeder,cn=Permission,cn=Application,dc=slash,dc=com");
		if (killper != null)
			killper.delete();
	}

	public void deleteRoleClass() throws Exception {
		RoleClassManager rolecmrg = (RoleClassManager) SecurityFactory
				.getBean("RoleClassManager");
		RoleClass[] killrolec = rolecmrg
				.getRoleClassByRootAppDN("cn=OA,cn=Module,cn=Application,dc=taikanglife,dc=com");
		for (int i = 0; i < killrolec.length; i++) {
			Role[] roles = SecurityFactory.getRoleManager()
					.getRolesByRoleClass(killrolec[i]);
			if (roles == null)
				continue;
			for (int j = 0; j < roles.length; j++) {
				roles[j].delete();
			}
			killrolec[i].delete();
			System.out.println(killrolec[i].getDN() + "干掉了!");
		}
	}

	public void createApplication(String parentAppDn, String ename, String name)
			throws Exception {
		// Application app = (Application)
		// SecurityFactory.getBean("Application");
		// ApplicationManager appmgr = (ApplicationManager)
		// SecurityFactory.getBean(
		// "ApplicationManager");
		// app.setAppPath("俺是傻根儿");
		// app.setCreateDate(new Date(System.currentTimeMillis()));
		// app.setModifyDate(new Date(System.currentTimeMillis()));
		// app.setDescription("大姐,俺信你!");
		// app.setEName("BeijingOffice");
		// app.setName("公文办理");
		// app.setIsRootApp(false);
		// app.setParentApp(appmgr.getAppByDN(
		// "cn=HeadOffice,cn=Module,cn=Application,dc=slash,dc=com"));
		// app.setValid();
		// app.save();

		Application app = (Application) SecurityFactory.getBean("Application");
		ApplicationManager appmgr = (ApplicationManager) SecurityFactory
				.getBean("ApplicationManager");
		Application parentapp = appmgr.getAppByDN(parentAppDn);
		app.setCreateDate(new Date(System.currentTimeMillis()));
		app.setModifyDate(new Date(System.currentTimeMillis()));
		app.setParentApp(parentapp);
		app.setEName(ename);
		app.setName(name);
		app.setIsRootApp(false);
		app.setValid();
		app.save();

	}

	public void ModifyApplication() throws Exception {
		ApplicationManager appmgr = (ApplicationManager) SecurityFactory
				.getBean("ApplicationManager");
		Application app = appmgr
				.getAppByDN("cn=BeijingOffice,cn=HeadOffice,cn=Module,cn=Application,dc=slash,dc=com");
		app.setAppPath("俺是傻根儿@#$#%$#");
		app.setCreateDate(new Date(System.currentTimeMillis()));
		app.setModifyDate(new Date(System.currentTimeMillis()));
		app.setDescription("大姐,俺信你!@%#$$%");
		app.setEName("BeijingOffice");
		app.setName("公文办理+会议室");
		app.setIsRootApp(false);
		app.setParentAppDN("cn=Module,cn=Application,dc=slash,dc=com");
		app.setValid();
		app.save();
	}

	public void ModifyOrganization() throws Exception {
		OrganizationManager appmgr = (OrganizationManager) SecurityFactory
				.getBean("OrganizationManager");
		Organization org = appmgr
				.getOrgByDN("ou=YangPu,ou=Shanghai,ou=ho,ou=taikanglife,cn=Organization,dc=slash,dc=com");
		org.setOrgCategory(Constants.orgCategory.SMILE_ORG_CATEGORY_CORP);
		org.setOrgClass(Constants.orgClass.SMILE_ORG_CLASS_BRANCH);
		org.save();

	}

	public void createRootApplication() throws Exception {
		Application app = (Application) SecurityFactory.getBean("Application");
		app.setAppPath("阿里爸爸的大门");
		app.setCreateDate(new Date(System.currentTimeMillis()));
		app.setModifyDate(new Date(System.currentTimeMillis()));
		app.setDescription("芝麻~芝麻~开");
		app.setEName("HeadOffice");
		app.setName("公文办理");
		app.setIsRootApp(true);
		app.setValid();
		app.save();
	}

	public void createRole(String ename, String name, String parentRoleClassDN,
			String manageOrgDN) throws Exception {
		Role role = (Role) SecurityFactory.getBean("Role");
		role.setCreateDate(new Date(System.currentTimeMillis()));
		role.setDescription(name);
		role.setEName(ename);
		role.setValid();
		role.setModifyDate(new Date(System.currentTimeMillis()));
		role.setName(name);
		OrganizationManager orgmgr = (OrganizationManager) SecurityFactory
				.getBean("OrganizationManager");
		role.setManageOrg(orgmgr.getOrgByDN(manageOrgDN));

		RoleClassManager rolcmgr = (RoleClassManager) SecurityFactory
				.getBean("RoleClassManager");
		role.setRoleClass(rolcmgr.getRoleClassByDN(parentRoleClassDN));

		// PersonManager permgr = (PersonManager) SecurityFactory.getBean(
		// "PersonManager");
		// role.setRoleOwner(permgr.getPersonsByName("d"));

		role.setManageLevel(Constants.manageLevel.SMILE_MANAGE_LEVEL_BASE);
		role.save();

	}

	public void ModifyRole() throws Exception {
		RoleManager rolemng = (RoleManager) SecurityFactory
				.getBean("RoleManager");

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -