1

Java で LDAP を使用して、Windows Active Directory にアクティブなユーザーを作成しようとしています。

私の作成方法は次のとおりです。

private Attributes createUserAttributes(String userName, String firstName, String lastName, String password) {
    Attributes container = new BasicAttributes();
    Attribute objClasses = new BasicAttribute("objectClass");
    Attribute userPassword = new BasicAttribute("userPassword", password);
    Attribute sAMAccountName = new BasicAttribute("SAMAccountName", userName);
    Attribute userPrincipialAttribute = new BasicAttribute("userPrincipalName", userName + "@" + DOMAIN_NAME);
    Attribute firstNameAttribute = new BasicAttribute("givenName", firstName);
    Attribute secondNameAttribute = new BasicAttribute("sn", lastName);
    Attribute activatedAccount = new BasicAttribute("userAccountControl", "512");

    objClasses.add("user");

    // Add these to the container
    container.put(objClasses);
    container.put(userPassword);
    container.put(sAMAccountName);
    container.put(userPrincipialAttribute);
    container.put(firstNameAttribute);
    container.put(secondNameAttribute);
    container.put(activatedAccount);

    return container;
} 

残念ながら、次のエラーが表示されます。

Exception in thread "main" javax.naming.OperationNotSupportedException: [LDAP: error code 53 - 0000052D: SvcErr: DSID-031A120C, problem 5003 (WILL_NOT_PERFORM), data 0

誰かアイデアはありますか?

4

2 に答える 2

1

私にとっての問題は、パスワードの関連性でした。脆弱なパスワードを使用すると、同じメッセージが表示されました。AD で定義されているルールを確認します。

于 2016-07-01T14:48:49.140 に答える
1

これはあなたの問題に答えるのに役立ちますスレッド: Operation Not Supported Exception in JNDI/Active Directory also How to add a active user account to Active Directory .

于 2013-02-24T14:25:52.360 に答える