Autenticação no AD

7 respostas
alonsoinfo

Boa tarde pessoal, procurei em todos os tópicos e não consegui achar.

Estou querendo fazer uma aplicação ( Desktop ) que apenas autentique no AD.

Estou um pouco perdido em relação a isso, fico no aguardo de ajuda…

Valeu

7 Respostas

alonsoinfo

alguem???

drsmachado

Após uma busca simples no desconhecido e nada utilizado site http://www.google.com.br por java + ad, obtive algumas respostas e, vejam só, uma aqui do guj:


Aí temos:
http://javafree.uol.com.br/topic-6151-Conexao-JAVA->-LDAP->-Active-Directory.html
E com spring:
http://www.agile-works.com/blog/?p=447

alonsoinfo

cara, se quiser mostro todas as paginas que abri daqui,

mas enfim.

drsmachado

alonsoinfo:
cara, se quiser mostro todas as paginas que abri daqui,

mas enfim.


O bom é que você deixou claro o que tentou, quais códigos usou como base para adaptar, que versão do Windows Server utiliza, se a rede possui proxy, só para citar alguns exemplos.

Aliás,

nem sempre existirá algo pronto, você tentou adaptar, ao menos?

alonsoinfo

aah, entendi, valeu !!!

estou tentando com esse codigo,

depois implemento no swing, quero so ve se funciona mesmo no basicao

estou com dúvida na seguinte linha:

String userName = "cn=xpto,ou=usuarios,ou=SP,ou=Teste,dc=teste,dc=com,dc=br";

import java.util.Hashtable;  
import javax.naming.AuthenticationException;  
import javax.naming.Context;  
import javax.naming.NamingException;  
import javax.naming.directory.Attribute;  
import javax.naming.directory.Attributes;  
import javax.naming.directory.DirContext;  
import javax.naming.directory.InitialDirContext;  
  
  
public class Login {  
  
    public static void main(String args []){  
  
        String userName = "cn=xpto,ou=usuarios,ou=SP,ou=Teste,dc=teste,dc=com,dc=br";
        String newPassword = "teste";  
  
        Hashtable authEnv = new Hashtable(11);  
  
        authEnv.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");  
        authEnv.put(Context.PROVIDER_URL, "ldap://AD.com.br:389");  
        authEnv.put(Context.SECURITY_AUTHENTICATION, "simple");  
        authEnv.put(Context.SECURITY_PRINCIPAL, userName);  
        authEnv.put(Context.SECURITY_CREDENTIALS, newPassword);  
  
       try  
        {  
           DirContext authContext = new InitialDirContext(authEnv);  
           System.out.println("Autenticado!");  
  
        }  
        catch (AuthenticationException authEx)  
        {  
        System.out.println("Erro na autenticação! ");  
        authEx.printStackTrace();  
        }  
        catch (NamingException namEx)  
        {  
        System.out.println("Problemas na conexão! ");  
        //namEx.getCause().printStackTrace();  
        }  
    }  
  
}
alonsoinfo

ah, consegui aqui…

finalmente !!!

como estava com duvida naquela linha, consegui achar o comando que mostra certinho

dsquery user -name nomeusuario

assim ficou mais facil.

Valeu a ajuda

flw

Resplandes

Olá vc, tem esse código implementado para exemplificação de como trabalhou essa situação ?

Criado 19 de julho de 2011
Ultima resposta 6 de nov. de 2014
Respostas 7
Participantes 3