Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Erro Conexão LDAP #3

Open
ruyjnr opened this issue Feb 10, 2021 · 4 comments
Open

Erro Conexão LDAP #3

ruyjnr opened this issue Feb 10, 2021 · 4 comments

Comments

@ruyjnr
Copy link

ruyjnr commented Feb 10, 2021

Estou instalando a versão do PGD conforme manual de implementação. Infelizmente não estou conseguindo autenticar os logins da minha organização consumindo os dados do meu Active Directory. A aplicação informa que o usuário e senha estão inválidos.

Alguém dica ou passo que deixe passar ?

@rjunior069
Copy link

Estou enfrentando o mesmo problema utilizando código PGD_CADE, refiz toda instalação do sistema executamos os escritos de banco de acordo com informado
Favor executar os scripts na sequência:
script_criar
Inserts_iniciais
Insert_Nota_Avaliacao
Alterar_collate

Configurado ambiente para Desenvolvimento e nada, mudamos para Homologacao e Producao e sem conexão com AD...

OBS, Ao utilizar o código da cgu_mma(https://www.gov.br/servidor/pt-br/assuntos/programa-de-gestao/subpastas/pgd-web-modelo-cgu-mma), conseguimos login local, pois essa autenticação é cpf...

@rjunior069
Copy link

Estou instalando a versão do PGD conforme manual de implementação. Infelizmente não estou conseguindo autenticar os logins da minha organização consumindo os dados do meu Active Directory. A aplicação informa que o usuário e senha estão inválidos.

Alguém dica ou passo que deixe passar ?

@rjunior069
Copy link

Bom dia, conseguimos resolver problema de login no AD... usando sistema pgd_cade_anvisa
Alem do usuario existir no AD, o mesmo tem que ser cadastrado diretamente no banco de dados também, ou seja,
Não basta estar no AD, tem que estar no banco de dados...

<add key="IPLDAP" value="ip" />
<add key="PortaLDAP" value="389" />                                                  
<add key="NetworkCredentialLDAP" value="cn={0},dc=dominio,dc=dominio" />

@clbcabral
Copy link

Como pode ser visto, o método de autenticação via LDAP apenas autentica e não persiste os dados do usuário no banco, impossibilitanto o login já que os dados não são persistidos.

if (ConfigurationManager.AppSettings["ambiente"] != "Desenvolvimento")
{
AutenticarLDAP(loginViewModel);
}
var usuario = BuscarUsuario(loginViewModel);
if (usuario == null)
{
ModelState.AddModelError("", "Usuário ou senha incorretos");
return null;
}

private void AutenticarLDAP(LoginViewModel loginViewModel)
{
/*
var ip = ConfigurationManager.AppSettings["IPLDAP"].ToString();
var porta = int.Parse(ConfigurationManager.AppSettings["PortaLDAP"].ToString());
var networkCredential = ConfigurationManager.AppSettings["NetworkCredentialLDAP"].ToString();
var ldi = new LdapDirectoryIdentifier(ip, porta);
var ldapConnection = new LdapConnection(ldi)
{
AuthType = AuthType.Basic
};
ldapConnection.SessionOptions.ProtocolVersion = 3;
NetworkCredential nc = new NetworkCredential(string.Format(networkCredential, loginViewModel.Cpf.RemoverMaskCpfCnpj()), loginViewModel.Senha);
ldapConnection.Bind(nc);
ldapConnection.Dispose();
*/
var ip = ConfigurationManager.AppSettings["IPLDAP"].ToString();
var porta = int.Parse(ConfigurationManager.AppSettings["PortaLDAP"].ToString());
DirectoryEntry directoryEntry = new DirectoryEntry("LDAP://" + ip + ":" + porta, loginViewModel.Sigla, loginViewModel.Senha);
DirectorySearcher directorySearcher = new DirectorySearcher(directoryEntry);
directorySearcher.Filter = "(SAMAccountName=" + loginViewModel.Sigla + ")";
SearchResult searchResult = directorySearcher.FindOne();
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants