algume sabe pq o codigo acima autentica mas nao me das os privilegios do usuario que deveria me daré como se ele estivesse somente escevendo logado e nao me da os privilegios, fiz uma modificações para testar e descobri q nao esta autenticando.
import java.io.File;
import java.io.IOException;
import java.util.Hashtable;
import javax.naming.AuthenticationException;
import javax.naming.Context;
import javax.naming.NamingException;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext;
public class login
{
public static void main(String[] args) throws IOException
{
Hashtable authEnv = new Hashtable(11);
authEnv.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
authEnv.put(Context.PROVIDER_URL, "ldap://172.16.0.1:389");
authEnv.put(Context.SECURITY_AUTHENTICATION, "simple");
authEnv.put(Context.SECURITY_PRINCIPAL, "[email removido]");
authEnv.put(Context.SECURITY_CREDENTIALS, "xxxxxx")
//----------------------------------------------------------------
try
{
DirContext authContext = new InitialDirContext(authEnv);
System.out.println("logado");
authContext.close();
}
catch (AuthenticationException authEx)
{
System.out.println("Erro na autenticação! Tente novamente.");
authEx.printStackTrace();
}
catch (NamingException namEx)
{
//out.println("Problemas na conexão! ");
System.out.println("Problemas na conexão! Sua maquina pode estar fora da rede. Contate o Suporte Tecnico");
namEx.getCause().printStackTrace();
}
File file = new File("\\\\172.16.0.200\\C$");
String dir[] = file.list();
for(int k=0; k<dir.length;k++)
{
System.out.println(dir[k]);
}
System.exit(0);
}
}
sendo q a maquina q eu estou testando esta fora do dominio se eu rodar a aplicação ele aparece logado, mas nao recuepra lista de arquivos e pastas do C$ mas se antes de eu rodar a aplicação ja tiver acessado pela rede e digitado o usuario e senha ele funciona ou seja nao autenticou.
Grato. >