在使用 Java 编程语言创建 Active Directory OU 和用户时,我们需要以管理员身份登录到域控制器服务器,并使用以下步骤:
1. 首先,我们需要使用以下代码连接到 Active Directory 域控制器,创建目录上下文并绑定管理员凭据:
Hashtable<String, String> env = new Hashtable<String, String>(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.SECURITY_AUTHENTICATION, "simple"); env.put(Context.SECURITY_PRINCIPAL, "yourdomain\\yourusername"); env.put(Context.SECURITY_CREDENTIALS, "yourpassword"); env.put(Context.PROVIDER_URL, "ldap://yourdomain.com:389"); DirContext ctx = new InitialDirContext(env);
2. 然后,我们可以使用以下代码创建 Active Directory OU:
Attributes attributes = new BasicAttributes(); Attribute attribute = new BasicAttribute("objectClass"); attribute.add("organizationalUnit"); attributes.put(attribute); attributes.put("ou", "testou"); ctx.createSubcontext("ou=testou,dc=yourdomain,dc=com", attributes);
3. 最后,我们可以使用以下代码创建 Active Directory 用户:
Attributes attributes = new BasicAttributes(); Attribute attribute = new BasicAttribute("objectClass"); attribute.add("user"); attributes.put(attribute); attributes.put("sAMAccountName", "testuser"); attributes.put("userPrincipalName", "testuser@yourdomain.com"); attributes.put("cn", "Test User"); attributes.put("givenName", "Test"); attributes.put("sn", "User"); attributes.put("displayName", "Test User"); attributes.put("userAccountControl", Integer.toString(512)); // enable user account attributes.put("unicodePwd", "\"Password1\"".getBytes("UTF-16LE")); // set user password attributes.put("memberOf", "cn=testgroup,ou=testou,dc=yourdomain,dc=com"); // add user to group ctx.createSubcontext("cn=testuser,ou=testou,dc=yourdomain,dc=com", attributes);
注意:在以上代码中,你需要将“yourdomain”替换为你自己的域名。