Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

pedrovisk

Utilizando o active directory (AD) via LDAP em ASP

Recommended Posts

Galera,Tenho um BD com todos os logins dos usuários, uma cópia do que existe no AD, mas eu gostaria de que no momento que o usuário logasse, a validação fosse feita pelo AD, ou seja, fosse no BD, pegasse o login e conferisse a senha armazenada no ADAlguém tem algum exemplo desse script?Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera,Tenho um BD com todos os logins dos usuários, uma cópia do que existe no AD, mas eu gostaria de que no momento que o usuário logasse, a validação fosse feita pelo AD, ou seja, fosse no BD, pegasse o login e conferisse a senha armazenada no ADAlguém tem algum exemplo desse script?Obrigado.

Cara,Eu tenho exemplos da época que precisei trabalhar com isso, mas não estou com eles no momento. Qualquer coisa te mando depois se você não conseguir encontrar.Mas faça uma pesquisa no google por ADSI ASP que logo você irá encontrar exemplos que te ajudem.AbraçosCassiano.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cassiano,Muito obrigado pela sua dica, foi muito útil. Consegui exemplos muito bons. Eu gostaria de pegar um exemplo utilizando o acesso com ADSI ao AD, para ler o login e senha. Eu ainda não encontro o nome do campo da senha.Abs,Pedro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera,

 

Consegui o tão difícil código!

 

Login 	= Trim(Request.Form("txt_Login"))	Senha 	= Trim(Request.Form("txt_Senha"))			   Dominio	= "casablanca.tur.br"			'Valida as variaveis	Login = ValidaDados(Login)	Senha = ValidaDados(Senha)		If Login And Senha = True Then			Login = Trim(Request.Form("txt_Login"))		Senha = Trim(Request.Form("txt_Senha"))					Login = LimpaLixo(Login)		Senha = LimpaLixo(Senha)					Dominio	= "casablanca.tur.br"				End If	On Error Resume Next	Set objUser = GetObject("WinNT://" & Dominio & "/" & Login )	If err.number <> 0 then		Response.Redirect "Acesso_Externo.asp"		Response.end	End If	If len(objUser.FullName) < 1 then			response.write "Usuário não encontrado!!!!"			response.end	Else		On Error Resume Next		objUser.ChangePassword  Senha, Senha				If err.number <> 0 then					Response.write" Senha incorreta!"			Response.end		End IfEnd If
Ele Funciona perfeitamente no Windows XP, mas ao jogar no servidor Windows 2003, ele não autentica. É como se ele não conhecesse a linha Set objUser = GetObject("WinNT://" & Dominio & "/" & Login ) Eu não sei como jogar isso para ra versão Win 2003.

 

Alguém já passou por isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera,

 

Consegui o tão difícil código!

 

Login 	= Trim(Request.Form("txt_Login"))
	Senha 	= Trim(Request.Form("txt_Senha"))
			   Dominio	= "casablanca.tur.br"	
	
	'Valida as variaveis
	Login = ValidaDados(Login)
	Senha = ValidaDados(Senha)
	
	If Login And Senha = True Then	
		Login = Trim(Request.Form("txt_Login"))
		Senha = Trim(Request.Form("txt_Senha"))
			
		Login = LimpaLixo(Login)
		Senha = LimpaLixo(Senha)
					Dominio	= "casablanca.tur.br"			
	End If

	On Error Resume Next
	Set objUser = GetObject("WinNT://" & Dominio & "/" & Login )

	If err.number <> 0 then
		Response.Redirect "Acesso_Externo.asp"
		Response.end
	End If

	If len(objUser.FullName) < 1 then
			response.write "Usuário não encontrado!!!!"
			response.end
	Else

		On Error Resume Next
		objUser.ChangePassword  Senha, Senha
		
		If err.number <> 0 then
		
			Response.write" Senha incorreta!"
			Response.end
		End If
End If

Ele Funciona perfeitamente no Windows XP, mas ao jogar no servidor Windows 2003, ele não autentica. É como se ele não conhecesse a linha Set objUser = GetObject("WinNT://" & Dominio & "/" & Login ) Eu não sei como jogar isso para ra versão Win 2003.

 

Alguém já passou por isso?

Cara, por acaso você conseguiu fazer o logon no win 2003?

 

valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenho um código onde podemos criar uma classe Java para autenticar um determinado conjunto de credenciais ldap, e registrar a classe Java como um componente COM e acessae os métodos atarvés do ASP.bem interessante, se quiser utilize o sistema de mensagem do fórum e coloque seu email, te mando.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala pessoal, tenho um código de exemplo. Segue abaixo:

 

'Validação do usuário no Active Directory
strDomainUser = Request.Form("User")
strPassword = Request.Form("Password")
strDomain = "dominio.com.br
Set objRootDSE = GetObject("LDAP://rootDSE")
Set objDSObj = GetObject("LDAP:")
On Error resume Next
Set objAuth = objDSObj.OpenDSObject("LDAP://"& strDomain &"/rootDSE", strDomainUser, strPassword, 1)
If Err.number = -2147023570 then
	Response.Redirect("erro.asp?flag=InvalidLogin")
End If
'Fim da validação no Active Directory

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.