AFAIK, this is simply not possible without bringing your own extensions to Java in some way - there is no Java API for this.
JNA. , - .
EDIT: , , /, , JNDI/LDAP - AS/400 Java, .
, O/S JVM- , API.
BTW, O/S (s).
EDIT2: , LDAP /, , , ; , .
Java-, - , , :
import java.security.*;
import java.util.*;
import javax.naming.*;
import javax.naming.directory.*;
import javax.naming.ldap.*;
...
private Hashtable masterEnv;
private String authMethod;
...
public void init() {
masterEnv=new Hashtable();
masterEnv.put(Context.INITIAL_CONTEXT_FACTORY,ldapFactory);
masterEnv.put(Context.PROVIDER_URL,providerUrl);
masterEnv.put(Context.SECURITY_PROTOCOL,secProtocol);
masterEnv.put(Context.REFERRAL,"follow");
masterEnv.put("com.sun.jndi.ldap.connect.pool","false");
authMethod=System.getProperty("authenticationMethod","simple");
}
...
private void verifyUserPassword(String ui, String pw, String am) throws NameNotFoundException, AuthenticationException, AuthenticationNotSupportedException, NamingException, NamingException {
DirContext lc=null;
Hashtable le;
if(am.length()==0) { am=authMethod; }
le=(Hashtable)masterEnv.clone();
le.put(Context.SECURITY_AUTHENTICATION,am);
le.put(Context.SECURITY_PRINCIPAL ,ui);
le.put(Context.SECURITY_CREDENTIALS ,pw);
lc=new InitialDirContext(le);
lc.close();
}