Jump to content
gianp

[ZF3] Alteração de senha no Active Directory

Recommended Posts

Prezados, estou realizando um script para alteração de senha no AD, porém ao tentar atualizar aparece o seguinte erro:

0x35 (Server is unwilling to perform; 0000209A: SvcErr: DSID-031A107A, problem 5003 (WILL_NOT_PERFORM), data 0
): updating: CN=Users,DC=domain,DC=local

Tenho um certificado local e outro no servidor instalados, além de realizar conexão criptografada.

 

Abaixo segue o trecho do meu código:

public function resetAction()
{
      $ldap_connect = $this->getLdap();
      $ldap = new Ldap($ldap_connect);

      $user = $this->getRequest()->getPost('user');
      $sen = $this->getRequest()->getPost('sen');

      $bind = $ldap->bind($user, $sen);

      if($bind) :

        $getName = $ldap->getCanonicalAccountName($user, Ldap::ACCTNAME_FORM_DN);
        $getEntry = $ldap->getEntry($getName);
        Attribute::setPassword($getEntry, '12345678910', Attribute::PASSWORD_UNICODEPWD);
        $ldap->update($getName, $getEntry);

         $this->flashMessenger()->addMessage("Atualizado com sucesso.");
       	return $this->redirect()->toRoute('home');

      else:  

         $this->flashMessenger()->addMessage("Ocorreu um erro ao atualizar.");
       return $this->redirect()->toRoute('home');

    endif;
}

 

Share this post


Link to post
Share on other sites

Ola tente assim:

public function resetAction()
{
      $ldap_connect = $this->getLdap();
      $ldap = new Zend_Ldap($ldap_connect);

      $user = $this->getRequest()->getPost('user');
      $sen = $this->getRequest()->getPost('sen');

      $bind = $ldap->bind($user, $sen);

      if($bind) :

        $getName = $ldap->getCanonicalAccountName($user, Zend_Ldap::ACCTNAME_FORM_DN);
        $getEntry = $ldap->getEntry($getName);
        Zend_Ldap_Attribute::setPassword($getEntry, '12345678910', Zend_Ldap_Attribute::PASSWORD_UNICODEPWD);
        $ldap->update($getName, $getEntry);

         $this->flashMessenger()->addMessage("Atualizado com sucesso.");
       	return $this->redirect()->toRoute('home');

      else:

         $this->flashMessenger()->addMessage("Ocorreu um erro ao atualizar.");
       return $this->redirect()->toRoute('home');

    endif;
}

 

Share this post


Link to post
Share on other sites
3 horas atrás, Dimitry disse:

Ola tente assim:


public function resetAction()
{
      $ldap_connect = $this->getLdap();
      $ldap = new Zend_Ldap($ldap_connect);

      $user = $this->getRequest()->getPost('user');
      $sen = $this->getRequest()->getPost('sen');

      $bind = $ldap->bind($user, $sen);

      if($bind) :

        $getName = $ldap->getCanonicalAccountName($user, Zend_Ldap::ACCTNAME_FORM_DN);
        $getEntry = $ldap->getEntry($getName);
        Zend_Ldap_Attribute::setPassword($getEntry, '12345678910', Zend_Ldap_Attribute::PASSWORD_UNICODEPWD);
        $ldap->update($getName, $getEntry);

         $this->flashMessenger()->addMessage("Atualizado com sucesso.");
       	return $this->redirect()->toRoute('home');

      else:

         $this->flashMessenger()->addMessage("Ocorreu um erro ao atualizar.");
       return $this->redirect()->toRoute('home');

    endif;
}

 

 

Amigão, a partir da versão ZF3 não há necessidade de utilizar esses alias (Zend_Ldap, Zend_Ldap_Attribute).

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By leandro123456789
      <div id="direito">
             
             <?php 
                      
                 $link = filter_input(INPUT_GET, 'link');
                 
                 $pag[1] = "../admin/home.php";
                 $pag[2] = "../admin/classes/Lista.php";
                 
              
              
                 if(!empty($link)){
                     
                     if(file_exists($pag[$link]))
                        
                      {
                         include $pag[$link];
                      
                      }
                        
                      else
                      { 
                         
                          include "home.php";
                      
                      }
                     
                 }else{
                     include "home.php";
                 }
              
              ?>
             
          </div>
       
       
      Estou tentando colocar a paginação do meu banco em $ pag [2] na minha página: ../admin/classes/Lista.php tem o seguinte código de paginação:

      <? php
          
          include_once ("../ admin / classes / ClassConexao.php");
          
          
          // verifique a página atual se informado no URL, caso contrário, ela será atribuída como 1ª página
          $ pagina = (isset ($ _ GET ['link = 2']))? $ _GET ['link = 2']: 1;
       
          // seleciona todos os itens da tabela
          $ cmd = "selecione * da categoria";
          $ produtos = mysqli_query ($ conn, $ cmd);
          
          // conta o total de itens
          $ total = mysqli_num_rows ($ produtos);
       
          // seta o número de itens por página, neste caso, 2 itens
          $ registros = 2;
       
          // calcula o número de páginas arredondando o resultado
          $ numPaginas = teto ($ total / $ registros);
       
          // variável para calcular o início da visualização com base na página atual
          $ inicio = ($ registros * $ pagina) - $ registros;
       
          // seleciona itens por página
          $ cmd = "selecione * da categoria limite $ inicio, $ registros";
          $ produtos = mysqli_query ($ conn, $ cmd);
          $ total = mysqli_num_rows ($ produtos);
           
          // exibe produtos selecionados
          while ($ produto = mysqli_fetch_array ($ produtos)) {
              echo $ produto ['id_categoria']. "-";
              echo $ produto ['categoria']. "-";
              echo $ produto ['ativo_categoria']. "<br />";
          }

      // Não sei como consertar esta parte para mostrar a paginação nesse $ pag [2] = "../admin/classes/Lista.php";
           
          // exibe paginação
          para ($ i = 1; $ i <$ numPaginas + 1; $ i ++) {
              
             echo "<a href='?pagina=$i'>". $ i. "</a>";
          }
                  
      ?>
      Meu menu fica assim:

      <div id = "sessao"> Categoria </div>
         <ul>
             
            
             <li> <a href="index.php?link=3"> Cadastro </a> </li>
             <li> <a href="index.php?link=2"> Listar / Editar </a> </li>
         
        </ul>
    • By violin101
      Caros amigos
       
      saudações...
       
      Gostaria de tirar uma dúvida com os amigos, referente uma função em Codeigniter.
       
      Fiz algumas pesquisa, mas não entendi muito bem.
       
      No Codeigniter existe base_url() e site_url(), qual é a diferença entre essas funções ou são a mesma coisa ?
       
      Grato,
       
      Cesar
    • By Kemily
      Estou com dificuldade com este programa.
      Ele da erro e não sei o que posso fazer para ele mostrar na tela o exemplo da venda de carros.
      Neste programa eu preciso conseguir dar opções de carros e formas de pagamento ao usuário para depois armazenar a escolha e assim criar uma tabela com o id do usuário, escolha de carro, quanto será a entrada e quantas parcelas de pagamento.
      Faltam algumas coisas ainda mas eu não sei como inseri-las.
      <?php if ($_POST) { $saldo = $_POST['total'] - $_POST['entrada']; <tr> <td>carro</td> <td>$_post['carro']</td> </tr> <tr> <td>total</td> <td>$_post['carro']</td> </tr> <tr> <td>estrada</td>, <td>$_post['entrada']</td> </tr> <tr> <td>parcelas</td> <td>$_post['parcelas']</td> </tr> <tr> <td>saldo</td> <td>$_POST['total'] - $_POST['entrada']</td> </tr> } ?> <html> <body> <form name='Carros' action='' method='post'> <label for="carros">Qual carro deseja comprar?</label> <br> <br> <select name="carros"> <option value="bmw">BMW M3 Sedã</option> <option value="chevrolet">Chevrolet Volt</option> <option value="dodge">Chrysler/Dodge Journey</option> <option value="citroen">Citroen C4 Lounge</option> <option value="ford">Ford Ka</option> </select> <label for="entrada">$ Entrada</label> <input type="dinheiro" value="0" name="entrada"><br> <label for="parcelas">Quantas parcelas?</label> <select name="parcelas"> <option value="12">12</option> <option value="24">24</option> <option value="36">36</option> <option value="48">48</option> </select><br><br> <label for="total">$ Total</label> <input type="dinheiro" value="0" name="total"><br> <input type="submit" value="Enviar"> </form> </body> </html>  
    • By Kemily
      <? php /* 1 - Faça uma função que recebe 3 numeros e faça a média aritmética desses números e retorne o resultado. */ if (isset ($_POST['enviar'])); $valor1 = $_POST['valor1']; $valor2 = $_POST['valor2']; $valor3 = $_POST['valor3']; $media = ($valor1 + $valor2 + $valor3) / 3; endif; ?> <!DOCTYPE html> <html> <head> <meta charset = "Utf-8"> <title> Cálculo da média aritimética</title> </head> <body> <form method="post" action=""> <br> <label>Primeiro valor: </label> <input name="valor1" type="text"> <br> <label>Segundo valor: </label> <input name="valor2" type="text"> <br> <label> Terceiro valor: </label> <input name="valor3" type="text"> <br> <br> <button type="submit" name="enviar"> Calcular Média </button> <button type="reset"> Limpar </button> <br> <br> Valor da Média <? php echo "A média equivale a:<br>" . $media . " - "; ?> </form> </body> </html> Alguém pode me ajudar?
      Eu estou fazendo este programa para calcular a média aritmética de três número que serão digitados pelo usuário.
      Porém não estou conseguindo fazer o resultado ser apresentado na tela.
      Nem o ultimo "echo" aparece só o " " . $media . " - "; " literalmente é isso que aparece onde deveria mostrar o resultado.
      Sou iniciante na área de php e se puderem ajudar agradeço. 
    • By Marcos PP
      Tenho que retornar os dados desta URL e transformar em variaves em PHP

      Ja tentei alguns exemplos mas so me retorna Null

      http://betontec.fortiddns.com:8082/api/login?usuario=joeliton&senha=123

       
      $data = file_get_contents('http://betontec.fortiddns.com:8082/api/login?usuario=joeliton&senha=123'); $data = json_decode($data,true); var_dump($data);  
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.