public function loginAction()
 {
     $formAdminLogin = new Form_Admin_Login();
     $this->view->formAdminLogin = $formAdminLogin;
     if ($this->getRequest()->isPost()) {
         $data = $this->getRequest()->getPost();
         if ($formAdminLogin->isValid($data)) {
             $email = $formAdminLogin->getValue('administrador_email');
             $senha = $formAdminLogin->getValue('administrador_senha');
             $db = Zend_Registry::get('db');
             $authAdapter = new Zend_Auth_Adapter_DbTable($db);
             $authAdapter->setTableName('administrador')->setIdentityColumn('administrador_email')->setCredentialColumn('administrador_senha')->setIdentity($email)->setCredential(md5($senha));
             $authAdapter->getDbSelect()->where("administrador_ativo = ?", 1);
             $auth = Zend_Auth::getInstance();
             $result = $auth->authenticate($authAdapter);
             if ($result->isValid()) {
                 $modelAdministrador = new Model_DbTable_Administrador();
                 $administrador = $modelAdministrador->getCredentials($email, $senha);
                 Zend_Auth::getInstance()->getStorage()->write($administrador);
                 $this->_redirect("/admin");
             } else {
                 die("Dados incorretos!");
             }
         }
     }
 }
示例#2
0
 public function loginAction()
 {
     //$this->_helper->layout()->disableLayout();
     $formAuthLogin = new Form_Auth_Login();
     $this->view->form = $formAuthLogin;
     if ($this->getRequest()->isPost()) {
         if ($formAuthLogin->isValid($this->getRequest()->getPost())) {
             $dadosAutenticacao = $formAuthLogin->getValues();
             $db = Zend_Registry::get('db');
             $authAdapter = new Zend_Auth_Adapter_DbTable($db);
             try {
                 $authAdapter->setTableName('administrador')->setIdentityColumn('administrador_email')->setCredentialColumn('administrador_senha')->setIdentity($dadosAutenticacao['administrador_email'])->setCredential(md5($dadosAutenticacao['administrador_senha']));
                 $authAdapter->getDbSelect()->where("administrador_ativo = ?", 1);
                 $auth = Zend_Auth::getInstance();
                 $result = $auth->authenticate($authAdapter);
                 if ($result->isValid()) {
                     $dadosAdministrador = array();
                     Zend_Auth::getInstance()->getStorage()->write($dadosAdministrador);
                     $this->_redirect("index/");
                 } else {
                     $this->_helper->flashMessenger->addMessage(array('class' => 'alert alert-danger', 'message' => 'Usuário e/ou senha inválidos!'));
                     Zend_Debug::dump($result);
                     die;
                     $this->_redirect("admin/autenticacao/login");
                 }
             } catch (Exception $e) {
                 $this->_helper->flashMessenger->addMessage(array('class' => 'alert alert-danger', 'message' => 'Houve um erro na autenticação - ' . $e->getMessage()));
                 $this->_redirect("auth/login");
             }
         }
     }
 }
 public function loginAction()
 {
     $formLogin = new Form_Admin_Login();
     $formLogin->submit->setLabel("Logar");
     $this->view->form = $formLogin;
     if ($this->getRequest()->isPost()) {
         $data = $this->getRequest()->getPost();
         if ($formLogin->isValid($data)) {
             $email = $formLogin->getValue('administrador_email');
             $senha = $formLogin->getValue('administrador_senha');
             $db = Zend_Registry::get('db');
             $authAdapter = new Zend_Auth_Adapter_DbTable($db);
             $authAdapter->setTableName('administrador')->setIdentityColumn('administrador_email')->setCredentialColumn('administrador_senha')->setIdentity($email)->setCredential(md5($senha));
             $authAdapter->getDbSelect()->where("administrador_ativo = ?", 1);
             $auth = Zend_Auth::getInstance();
             $result = $auth->authenticate($authAdapter);
             if ($result->isValid()) {
                 $modelAdministrador = new Model_DbTable_Administrador();
                 $administrador = $modelAdministrador->getByField("administrador_email", $email);
                 Zend_Auth::getInstance()->getStorage()->write($administrador);
                 $this->_redirect("admin/");
             } else {
                 $this->_helper->flashMessenger->addMessage(array('danger' => 'Usuário e/ou senha inválidos'));
             }
         }
     }
 }
示例#4
0
 public static function authenticate(array $values)
 {
     $email = isset($values['email']) ? $values['email'] : null;
     $senha = isset($values['senha']) ? $values['senha'] : null;
     if (!count($values)) {
         throw new Exception('Não foi passado valores para autenticar');
     }
     // Pegar os dados da autenticacao e checa
     $dbAdapter = Zend_Db_Table_Abstract::getDefaultAdapter();
     $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
     $authAdapter->setTableName('usuario')->setIdentityColumn('email')->setCredentialColumn('senha');
     $authAdapter->setIdentity($email)->setCredential($senha)->setCredentialTreatment('MD5(?)');
     $select = $authAdapter->getDbSelect();
     $select->join(array('g' => 'grupo'), 'g.id = usuario.grupo_id', array('grupo' => 'nome'));
     //Realiza autenticação
     $result = $authAdapter->authenticate();
     //Verifica se a autenticação foi válida
     if ($result->isValid()) {
         //Obtém dados do usuário
         $usuario = $authAdapter->getResultRowObject();
         //Armazena seus dados na sessão
         $storage = Zend_Auth::getInstance()->getStorage();
         $storage->write($usuario);
         //Redireciona para o Index
         return true;
     }
     return false;
 }
示例#5
0
 public function auth($usuario, $password)
 {
     $dbAdapter = Zend_Db_Table_Abstract::getDefaultAdapter();
     $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
     $authAdapter->setTableName('cn_admin')->setIdentityColumn('email')->setCredentialColumn('password')->setIdentity($usuario)->setCredential(md5($password));
     $select = $authAdapter->getDbSelect();
     $select->where('flagactive = 1');
     $result = Zend_Auth::getInstance()->authenticate($authAdapter);
     if ($result->isValid()) {
         $storage = Zend_Auth::getInstance()->getStorage();
         $bddResultRow = $authAdapter->getResultRowObject();
         $storage->write($bddResultRow);
         $msj = 'Bienvenido Usuario ' . $result->getIdentity();
         $this->view->message = $this->_flashMessenger->success($msj);
         $this->_identity = Zend_Auth::getInstance()->getIdentity();
         $return = true;
     } else {
         switch ($result->getCode()) {
             case Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND:
                 $msj = 'El usuario no existe';
                 break;
             case Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID:
                 $msj = 'Password incorrecto';
                 break;
             default:
                 $msj = 'Datos incorrectos';
                 break;
         }
         $this->view->message = $this->_flashMessenger->warning($msj);
         $return = false;
     }
     return $return;
 }
示例#6
0
 public function loginAction()
 {
     $this->_form = new Mybase_Form_Login();
     if (!$this->getRequest()->isPost()) {
         $this->view->form = $this->_form;
     } else {
         $form = $this->_form;
         if (!$form->isValid($_POST)) {
             $this->view->form = $form;
             $this->_flash('Všechna pole musí být vyplněna', 'error', false);
         } else {
             $values = $form->getValues();
             $auth = Zend_Auth::getInstance();
             $authAdapter = new Zend_Auth_Adapter_DbTable(Zend_Db_Table_Abstract::getDefaultAdapter(), 'user_login', 'username', 'password', 'MD5(?)');
             $modelAccount = new Model_Account();
             $idaccount = $modelAccount->getId($this->_request->account);
             $select = $authAdapter->getDbSelect();
             $select->where('idaccount = ' . $idaccount);
             $authAdapter->setIdentity($values['username']);
             $authAdapter->setCredential($values['password']);
             $result = $auth->authenticate($authAdapter);
             switch ($result->getCode()) {
                 case Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND:
                     $this->view->form = $form;
                     $this->_flash('Špatné uživatelské jméno', 'error', false);
                     break;
                 case Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID:
                     $this->view->form = $form;
                     $this->_flash('Špatné heslo', 'error', false);
                     break;
                 case Zend_Auth_Result::SUCCESS:
                     $storage = $auth->getStorage();
                     $storage->write($authAdapter->getResultRowObject(array('email', 'name', 'surname', 'username', 'iduser', 'owner', 'administrator')));
                     if ($form->getValue('remember') == 1) {
                         Zend_Session::rememberMe(60 * 60 * 24 * 14);
                     }
                     //$this->_redirect('http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']);
                     $this->_redirect('/');
                     break;
                 case Zend_Auth_Result::FAILURE:
                     $this->view->form = $form;
                     $this->_flash('Neznámá chyba (FAILURE)', 'error', false);
                     break;
                 case Zend_Auth_Result::FAILURE_IDENTITY_AMBIGUOUS:
                     $this->view->form = $form;
                     $this->_flash('"Nejednoznačné"', 'error', false);
                     break;
                 case Zend_Auth_Result::FAILURE_UNCATEGORIZED:
                     $this->view->form = $form;
                     $this->_flash('Neznámá chyba(FAILURE_UNCATEGORIZED)', 'error', false);
                     break;
                 default:
                     $this->view->form = $form;
                     $this->_flash('Neznámá chyba (default)', 'error', false);
                     break;
             }
         }
     }
     $this->_helper->layout->disableLayout();
 }
示例#7
0
 public function loginAction()
 {
     // // set template login
     $template_path = TEMPLATE_PATH . "/default/before";
     $this->loadTemplate($template_path, 'template.ini', 'default');
     $auth = Zend_Auth::getInstance();
     if ($auth->hasIdentity()) {
         $this->_redirect(HOST_PATH_PUBLIC);
     }
     if ($this->_request->isPost()) {
         $authTable = new Zend_Auth_Adapter_DbTable();
         // tao adapter
         $authTable->setTableName('user')->setIdentityColumn('email')->setCredentialColumn('password');
         //cot du lieu 2
         $fname = $this->_request->getPost('email');
         $fpass = $this->_request->getPost('password');
         $fpass = md5($fpass);
         $authTable->setIdentity($fname)->setCredential($fpass);
         $authTable->getDbSelect();
         $auth = Zend_Auth::getInstance();
         $kq = $auth->authenticate($authTable);
         if ($kq->isValid()) {
             $user = $authTable->getResultRowObject(null, array("password"));
             $auth->getStorage()->write($user);
             $this->_redirect(HOST_PATH_PUBLIC);
         } else {
             $this->_redirect(HOST_PATH_PUBLIC . '/index/login');
         }
     }
 }
示例#8
0
 public function login($arrParam = null, $options = null)
 {
     //1. Lay ket noi voi database
     $db = Zend_Registry::get("connectDB");
     //2.
     $authAdapter = new Zend_Auth_Adapter_DbTable($db);
     $authAdapter->setTableName('user')->setIdentityColumn('user_name')->setCredentialColumn('password');
     //3.
     $authAdapter->setIdentity($arrParam['user_name']);
     $password = md5($arrParam['password']);
     $authAdapter->setCredential($password);
     //4.
     $select = $authAdapter->getDbSelect();
     $select->where("status = 1");
     //5.
     $auth = Zend_Auth::getInstance();
     $result = $auth->authenticate($authAdapter);
     $flag = false;
     if ($result->isValid()) {
         $returnColumns = array('user_name', 'password');
         $omitColumns = array('password');
         $data = $authAdapter->getResultRowObject(null, $omitColumns);
         $auth->getStorage()->write($data);
         $flag = true;
     } else {
         $this->_messages = $result->getMessages();
     }
     return $flag;
 }
示例#9
0
 public static function login($login, $senha)
 {
     $dbAdapter = Zend_Db_Table::getDefaultAdapter();
     //Inicia o adaptador Zend_Auth para banco de dados
     $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
     $authAdapter->setTableName('users')->setIdentityColumn('login')->setCredentialColumn('password')->setCredentialTreatment('SHA1(?)');
     //Define os dados para processar o login
     $authAdapter->setIdentity($login)->setCredential($senha);
     //Faz inner join dos dados do perfil no SELECT do Auth_Adapter
     $select = $authAdapter->getDbSelect();
     $select->join('roles', 'roles.id_role = users.id_role', array('role_roles' => 'role', 'id_role'));
     //Efetua o login
     $auth = Zend_Auth::getInstance();
     $result = $auth->authenticate($authAdapter);
     //Verifica se o login foi efetuado com sucesso
     if ($result->isValid()) {
         //Recupera o objeto do usuário, sem a senha
         $info = $authAdapter->getResultRowObject(null, 'password');
         $usuario = new Application_Model_Users();
         $usuario->setFullName($info->nome);
         $usuario->setUserName($info->login);
         $usuario->setRoleId($info->role_roles);
         $usuario->setRoleCod($info->id_role);
         $storage = $auth->getStorage();
         $storage->write($usuario);
         return true;
     }
     throw new Exception('Nome de usuário ou senha inválida');
 }
示例#10
0
 public function login($arrParam, $options = null)
 {
     //1. Goi ket noi voi Zend Db
     $db = Zend_Registry::get('connectDb');
     //2.Khoi tao Zend Auth
     $auth = Zend_Auth::getInstance();
     //3
     $authAdapter = new Zend_Auth_Adapter_DbTable($db);
     //Zend_Db_Adapter_Abstract $zendDb = null, $tableName = null, $identityColumn = null,
     //                        $credentialColumn = null, $credentialTreatment = null)
     $authAdapter->setTableName('da_users')->setIdentityColumn('user_name')->setCredentialColumn('password');
     $select = $authAdapter->getDbSelect();
     $select->where('status = 1');
     $encode = new Zendda_Encode();
     $user_name = $arrParam['user_name'];
     $password = $encode->password($arrParam['password']);
     $authAdapter->setIdentity($user_name);
     $authAdapter->setCredential($password);
     //Lay ket qua truy van cua Zend_Auth
     $result = $auth->authenticate($authAdapter);
     $flag = false;
     if (!$result->isValid()) {
         $error = $result->getMessages();
         $this->_messageError = current($error);
     } else {
         $omitColumns = array('password');
         $data = $authAdapter->getResultRowObject(null, $omitColumns);
         $auth->getStorage()->write($data);
         $flag = true;
     }
     return $flag;
 }
示例#11
0
 /**
  * @return boolean
  */
 public function validate()
 {
     $this->actionController->oAcl->getStorage()->clear();
     if (!parent::validate()) {
         return false;
     }
     $sUserLogin = $this->controls['login']->getValue();
     $sUserPassword = $this->controls['password']->getValue();
     $oAuth = Zend_Auth::getInstance();
     $oAuthAdapter = new Zend_Auth_Adapter_DbTable();
     $oAuthAdapter->setTableName('user')->setIdentityColumn('login')->setCredentialColumn('password')->setCredentialTreatment('MD5(?)');
     $oAuthAdapter->setIdentity($sUserLogin)->setCredential($sUserPassword);
     $oSelect = $oAuthAdapter->getDbSelect();
     $oSelect->where('user.deleted = ?', 'no')->joinLeft('client', 'client.id = user.client', array('client_title' => 'client.title'));
     $oResult = $oAuth->authenticate($oAuthAdapter);
     if ($oResult->isValid()) {
         $aResult = (array) $oAuthAdapter->getResultRowObject();
         $aResult['role'] = $aResult['is_admin'] == 0 ? 'user' : 'admin';
         $oAuth->getStorage()->write($aResult);
         return true;
     } else {
         $this->errors[] = 'Invalid login or password';
         return false;
     }
 }
示例#12
0
 public function indexAction()
 {
     if (!empty($this->sessPublisherInfo)) {
         $this->_redirect('publisher/');
     }
     //$this->_helper->layout()->setLayout('publisherlogin');
     $this->view->messages = $this->_flashMessenger->getMessages();
     $formData = array();
     $formErrors = array();
     if ($this->getRequest()->isPost()) {
         $formData = $this->getRequest()->getPost();
         //print_r($formData);exit;
         if (!isset($formData['user_name']) || trim($formData['user_name']) == "") {
             $formErrors['user_name'] = "Please enter your username";
         }
         if (!isset($formData['user_password']) || trim($formData['user_password']) == "") {
             $formErrors['user_password'] = "******";
         }
         if (count($formErrors) == 0) {
             $usermailID = trim($formData['user_name']);
             $getLoginRecord = $this->modelPublishers->getInfoByLoginEmail($usermailID);
             if (count($getLoginRecord) > 0) {
                 for ($countUser = 0; $countUser < count($getLoginRecord); $countUser++) {
                     if ($getLoginRecord[$countUser]['user_type'] != 'author') {
                         $auth = Zend_Auth::getInstance();
                         $authAdapter = new Zend_Auth_Adapter_DbTable($this->modelPublishers->getAdapter(), TBL_PUBLISHERS);
                         $authAdapter->setIdentityColumn('emailid')->setCredentialColumn('password');
                         $authAdapter->setIdentity($formData['user_name'])->setCredential(md5($formData['user_password']));
                         $authAdapter->getDbSelect()->where('user_type="' . $getLoginRecord[$countUser]['user_type'] . '"');
                         $result = $auth->authenticate($authAdapter);
                         if ($result->isValid()) {
                             $userInfo = $authAdapter->getResultRowObject();
                             if ($this->modelPublishers->isExist('profile_status=1 AND id=' . $userInfo->id)) {
                                 $storage = new Zend_Auth_Storage_Session('publisher_type');
                                 $storage->write($userInfo);
                                 $this->_redirect('publisher/');
                             } else {
                                 $this->view->errorMessage = '<div class="div-error">Sorry, user is not active</div>';
                             }
                         } else {
                             $this->view->errorMessage = '<div class="div-error">Invalid username or password</div>';
                         }
                     }
                 }
             } else {
                 $this->view->errorMessage = '<div class="div-error">Invalid username or password</div>';
             }
         } else {
             $this->view->errorMessage = '<div class="div-error">Please enter username and password</div>';
         }
     }
     $sessionMsg = new Zend_Session_Namespace('step1Msg');
     $sessionMsg->formData = $formData;
     $sessionMsg->formErrors = $formErrors;
     $sessionMsg->errorMessage = $this->view->errorMessage;
     //$this->_redirect('/');
 }
示例#13
0
 /**
  * This function returns an auth adapter for the login systems
  *
  * @param array params
  * @return Zend_Auth_Adapter_DbTable
  *
  * This function takes a params array (which should be login form values)
  * and creates a zend auth adapter linked to the correct database
  * and users table. If the params array has come from a login form and has
  * a username and password fields it will set them as the identity
  * and credentials in the auth adapter so that we can check to see if they
  * are valid
  */
 protected function _getAuthAdapter(array $params)
 {
     $authAdapter = new Zend_Auth_Adapter_DbTable(Zend_Registry::get('db_legacy_homelet'));
     $authAdapter->setTableName('agentid')->setIdentityColumn('username')->setCredentialColumn('password')->setCredentialTreatment("?");
     $authAdapter->setIdentity($params['username']);
     $authAdapter->setCredential($params['password']);
     $dbselect = $authAdapter->getDbSelect();
     // Link against the agent scheme number
     $dbselect->where('agentschemeno = ?', array($params['agentschemeno']));
     return $authAdapter;
 }
示例#14
0
 /**
  * @group ZF-5957
  */
 public function testAdapterReturnsASelectObjectWithoutAuthTimeModificationsAfterAuth()
 {
     $select = $this->_adapter->getDbSelect();
     $select->where('1 = 1');
     $this->_adapter->setIdentity('my_username');
     $this->_adapter->setCredential('my_password');
     $this->_adapter->authenticate();
     $selectAfterAuth = $this->_adapter->getDbSelect();
     $whereParts = $selectAfterAuth->getPart(Zend_Db_Select::WHERE);
     $this->assertEquals(1, count($whereParts));
     $this->assertEquals('(1 = 1)', array_pop($whereParts));
 }
示例#15
0
 public function auth($usuario, $password, $url = null)
 {
     $dbAdapter = Zend_Registry::get('multidb');
     $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
     //  $hash = password_hash($password, PASSWORD_DEFAULT);
     $authAdapter->setTableName('tusers')->setIdentityColumn('login')->setCredentialColumn('password')->setIdentity($usuario)->setCredential($password);
     try {
         $select = $authAdapter->getDbSelect();
         $select->where('state = 1');
         $result = Zend_Auth::getInstance()->authenticate($authAdapter);
         if ($result->isValid()) {
             $storage = Zend_Auth::getInstance()->getStorage();
             $bddResultRow = $authAdapter->getResultRowObject();
             $storage->write($bddResultRow);
             $msj = 'Bienvenido Usuario ' . $result->getIdentity();
             $this->_identity = Zend_Auth::getInstance()->getIdentity();
             if (isset($mysession->destination_url)) {
                 $url = $mysession->destination_url;
                 unset($mysession->destination_url);
                 $this->_redirect($url);
             }
             if (!empty($url)) {
                 $this->_redirect($url);
             }
             $return = true;
         } else {
             switch ($result->getCode()) {
                 case Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND:
                     $msj = 'El usuario no existe';
                     break;
                 case Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID:
                     $msj = 'Password incorrecto';
                     break;
                 case Zend_Auth_Result::FAILURE_IDENTITY_AMBIGUOUS:
                     $msj = 'Identidad Ambigua';
                     break;
                 case Zend_Auth_Result::FAILURE_UNCATEGORIZED:
                     $msj = 'Credencial Fracasada';
                     break;
                 default:
                     $msj = 'Datos incorrectos';
                     break;
             }
             $this->_flashMessenger->warning($msj);
             $return = false;
         }
     } catch (Exception $e) {
         echo $e->getMessage();
         exit;
     }
     return $return;
 }
示例#16
0
 /**
  * Informa o Adaptador Atual
  * @param string $username Nome do Usuário
  * @param string $password Senha
  * @return Zend_Auth_Adapter_Interface Adaptador de Conexão
  */
 protected function _getAdapter($username, $password)
 {
     // Conexão com Banco
     $table = new Application_Model_DbTable_Usuario();
     // Construção do Adaptador
     $adapter = new Zend_Auth_Adapter_DbTable($table->getAdapter());
     $adapter->setIdentityColumn('identidade')->setCredentialColumn('credencial')->setTableName($table->getTableName())->setCredentialTreatment('MD5(?)');
     // Somente Usuários Ativos
     $adapter->getDbSelect()->where('ativado = ?', true);
     // Valores
     $adapter->setIdentity($username)->setCredential($password);
     // Resultado da Construção
     return $adapter;
 }
示例#17
0
 public function login($username, $password)
 {
     // Remove backslashes
     $username = str_replace("\\", "", $username);
     // filter data from the user
     $f = new Zend_Filter_StripTags();
     $this->user = $f->filter($username);
     $this->pwd = $f->filter($password);
     // Validate credentials
     if (empty($username)) {
         throw new Exception('Invalid username');
     }
     if (empty($password)) {
         throw new Exception('Invalid password');
     }
     // Username can be alphanum with dash, underscore, @, periods and apostrophe
     $usernameValidator = new Zend_Validate_Regex('/^([A-Za-z0-9-_@\\.\']+)$/');
     if (!$usernameValidator->isValid($username)) {
         throw new Exception('Please enter a valid username');
     }
     // setup Zend_Auth adapter for a database table
     $this->db->setFetchMode(Zend_Db::FETCH_ASSOC);
     $authAdapter = new Zend_Auth_Adapter_DbTable($this->db);
     $authAdapter->setTableName('ol_admins');
     $authAdapter->setIdentityColumn('user');
     $authAdapter->setCredentialColumn('password');
     // Set the input credential values to authenticate against
     $authAdapter->setIdentity($username);
     $authAdapter->setCredential(md5($password));
     $authAdapter->getDbSelect()->where('active = ?', 1);
     // MUST be an active account
     // do the authentication
     $result = $this->auth->authenticate($authAdapter);
     $this->db->setFetchMode(Zend_Db::FETCH_OBJ);
     if (!$result->isValid()) {
         throw new Exception('Login failed.');
     }
     //var_dump($authAdapter->getResultRowObject()); exit();
     // Update last login date
     $users = new OneLogin_Acl_Users();
     $users->updateLastLoginDate($username);
     // Define object and set auth information
     $objUser = new stdClass();
     $objUser->user_id = $authAdapter->getResultRowObject()->id;
     $objUser->api_user_username = $username;
     $objUser->api_user_password = $password;
     $objUser->active = $authAdapter->getResultRowObject()->active;
     $this->auth->getStorage()->write($objUser);
 }
示例#18
0
 /**
  * @return Zend_Auth_Result
  */
 public function authenticate(Zend_Auth $auth, $username, $password, $persistIfSuccessful = true)
 {
     $adapter = new Zend_Auth_Adapter_DbTable(Zend_Db_Table_Abstract::getDefaultAdapter(), 'user', 'username', 'user_credential.value');
     $adapterSelect = $adapter->getDbSelect()->join('user_credential', 'user_credential.user_id = user.id')->where('user_credential.type = "PASSWORD"');
     $adapter->setIdentity($username)->setCredential(md5($password));
     // SQLite has no internal md5() function
     $authResult = $auth->authenticate($adapter);
     if (!$authResult->isValid() || $persistIfSuccessful == false) {
         return $authResult;
     }
     $userInfo = $adapter->getResultRowObject(array('id', 'username'));
     /** NEEDS TO BE IMPLEMENTED **/
     // Store all user details except password in authentication session
     $auth->getStorage()->write($currentUser);
     return $authResult;
 }
示例#19
0
 public function auth($usuario, $password, $url = null)
 {
     $dbAdapter = Zend_Registry::get('multidb');
     $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
     $authAdapter->setTableName('tusers')->setIdentityColumn('login')->setCredentialColumn('password')->setIdentity($usuario)->setCredential($password);
     try {
         $select = $authAdapter->getDbSelect();
         $select->where('state = 1');
         //echo $select->assemble(); //exit;
         //var_dump($authAdapter); exit;
         $result = Zend_Auth::getInstance()->authenticate($authAdapter);
         //var_dump($result); exit;
         if ($result->isValid()) {
             $storage = Zend_Auth::getInstance()->getStorage();
             $bddResultRow = $authAdapter->getResultRowObject();
             $storage->write($bddResultRow);
             $msj = 'Bienvenido Usuario ' . $result->getIdentity();
             //$this->_flashMessenger->success($msj);
             $this->_identity = Zend_Auth::getInstance()->getIdentity();
             if (!empty($url)) {
                 $this->_redirect($url);
             }
             $return = true;
         } else {
             switch ($result->getCode()) {
                 case Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND:
                     $msj = 'El usuario no existe';
                     break;
                 case Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID:
                     $msj = 'Password incorrecto';
                     break;
                 case Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND:
                     $msj = 'dsdsdsd';
                     break;
                 default:
                     $msj = 'Datos incorrectos';
                     break;
             }
             $this->_flashMessenger->warning($msj);
             $return = false;
         }
     } catch (Exception $e) {
         echo $e->getMessage();
         exit;
     }
     return $return;
 }
示例#20
0
 public function indexAction()
 {
     // TODO Auto-generated {0}::indexAction() default action
     $form = new Admin_Form_Login();
     $this->view->form = $form;
     if ($this->_request->isPost()) {
         if ($form->isValid($_POST)) {
             //1.Goi ket noi voi Zend Db
             $db = Zend_Registry::get('connectDB');
             //2. Khoi tao Zend Auth
             $auth = Zend_Auth::getInstance();
             //3. Khai bao bang va 2 cot se su dung so sanh trong qua trinh login
             $authAdapter = new Zend_Auth_Adapter_DbTable($db);
             $authAdapter->setTableName('nguoi_dung')->setIdentityColumn('ten_dang_nhap')->setCredentialColumn('mat_khau');
             //4. Lay gia tri duoc gui qua tu FORM
             $uname = $form->getValue('Username');
             $paswd = md5($form->getValue('Password'));
             //5. Dua vao so sanh voi du lieu khai bao o muc 3
             $authAdapter->setIdentity($uname);
             $authAdapter->setCredential($paswd);
             //6. Kiem tra trang thai cua user neu trang_thai = 1 moi duoc login
             $select = $authAdapter->getDbSelect();
             $select->where('trang_thai = 1');
             //7. Lay ket qua truy van
             $result = $auth->authenticate($authAdapter);
             if ($result->isValid()) {
                 //8. Lay nhung du lieu can thiet trong bang users neu login thanh cong
                 $data = $authAdapter->getResultRowObject(null, array('mat_khau'));
                 //9. Luu  nhung du lieu cua member vao session
                 $auth->getStorage()->write($data);
                 //Update lan dang nhap cuoi
                 $user = Khcn_Api::_()->getItem('default_nguoi_dung', $auth->getStorage()->read()->id);
                 $user->lan_dang_nhap_cuoi = date('Y-m-d H:i:s');
                 $user->save();
                 $this->_redirect('/admin/index/index');
             } else {
                 $this->view->message = 'Tên đăng nhập hoặc mật khẩu không đúng';
             }
         } else {
             $this->view->form = $form;
         }
     } else {
         $this->view->form = $form;
     }
 }
示例#21
0
 public function authentificateAction()
 {
     if (!$this->getRequest()->isPost()) {
         return $this->_forward('index');
     }
     $form = $this->getForm();
     if (!$form->isValid($_POST)) {
         $this->view->form = $form;
         return $this->render('index');
     } else {
         $values = $form->getValues();
         $authAdapter = new Zend_Auth_Adapter_DbTable(Zend_Registry::get('database'));
         $authAdapter->setTableName('users');
         $authAdapter->setIdentityColumn('Login');
         $authAdapter->setCredentialColumn('Password');
         $authAdapter->setIdentity($values['Login']);
         $authAdapter->setCredential($values['Password']);
         $select = $authAdapter->getDbSelect();
         $select->where('Active = 1');
         if ($authAdapter->authenticate()->getCode() == Zend_Auth_Result::SUCCESS) {
             $databaseTable = $authAdapter->getResultRowObject();
             Zend_Registry::get('database')->query('UPDATE users SET LastConnection = NOW() WHERE Id = "' . $databaseTable->Id . '"');
             $session = $this->session;
             if (isset($_COOKIE['PreviousCategory'])) {
                 $table = new Categories();
                 $row = $table->find($_COOKIE['PreviousCategory'])->current();
                 if (isset($row->Id)) {
                     $session->category = $row->Id;
                     $session->categoryName = $row->Name;
                 }
             }
             $session->access = true;
             $session->id = $databaseTable->Id;
             $session->lastName = $databaseTable->LastName;
             $session->firstName = $databaseTable->FirstName;
             $session->rights = new UsersRights($databaseTable->Status);
             $this->view->access = true;
             $this->_forward('home');
         } else {
             $this->view->message = '<div class="error">Identification incorrect : mauvais nom d\'utilisateur et/ou mot de passe.</div>';
             $this->view->form = $form;
             return $this->render('index');
         }
     }
 }
示例#22
0
 public function indexAction()
 {
     //Gọi hàm kết nối với ZendDb
     $db = Zend_Registry::get('db');
     //Khởi tạo Zend Auth
     $auth = Zend_Auth::getInstance();
     //
     $authAdapter = new Zend_Auth_Adapter_DbTable($db);
     $authAdapter->setTableName('user')->setIdentityColumn('username')->setCredentialColumn('password');
     $select = $authAdapter->getDbSelect();
     $select->order('username');
     if ($this->_request->isPost()) {
         $data = $this->_getParam('form');
         $username = $data['username'];
         $password = md5($data['password']);
         $this->sessionGlobal->username = $username;
         $authAdapter->setIdentity($username);
         $authAdapter->setCredential($password);
         $result = $auth->authenticate($authAdapter);
         if (!$result->isValid()) {
             echo '<h4 style="color:red">Sai tài khoản hoặc mật khẩu!</h4>';
         } else {
             $omitColumns = array('password');
             $dataAuth = $authAdapter->getResultRowObject(null, $omitColumns);
             $auth->getStorage()->write($dataAuth);
             $info = $auth->getIdentity();
             if ($info->del_check == 0) {
                 $this->sessionGlobal->lecturer_id = $info->lecturer_id;
                 $lecturer_id = $info->lecturer_id;
                 $user = new Model_Users();
                 $findRole = $user->findRoleUser($lecturer_id);
                 $this->sessionGlobal->role_id = $findRole->role_id;
                 $role_id = $findRole->role_id;
                 if ($role_id == 1 || $role_id == 2) {
                     $this->redirect('giaovu/');
                 } else {
                     $this->redirect('info/');
                 }
             } else {
                 echo '<script>alert("Tài khoản này không còn quyền truy cập vào vệ thống.");</script>';
             }
         }
     }
     $this->view;
 }
示例#23
0
 public function authAction()
 {
     $request = $this->getRequest();
     $registry = Zend_Registry::getInstance();
     $auth = Zend_Auth::getInstance();
     $DB = $registry['DB'];
     $authAdapter = new Zend_Auth_Adapter_DbTable($DB);
     $authAdapter->setTableName('fitness_user_general')->setIdentityColumn('user_username')->setCredentialColumn('user_password');
     if ($request->getParam('user_username') != "" && $request->getParam('user_password') != "") {
         // Set the input credential values
         $uname = $request->getParam('user_username');
         $paswd = md5($request->getParam('user_password'));
         $authAdapter->setIdentity($uname);
         $authAdapter->setCredential($paswd);
         $select = $authAdapter->getDbSelect();
         $select->where('user_status = 1');
         // Perform the authentication query, saving the result
         $result = $auth->authenticate($authAdapter);
         if ($result->isValid()) {
             //print_r($result);
             $data = $authAdapter->getResultRowObject(null, 'password');
             $auth->getStorage()->write($data);
             $sess = new Zend_Session_Namespace('UserSession');
             if ($sess->isLocked()) {
                 $sess->unlock();
             }
             $sess->username = $uname;
             //record login status
             $fitnessUser = new FitnessUserGeneral();
             $fitnessUser->userLogin($uname);
             $loginDetails = $fitnessUser->getLastLogin($uname);
             $fitnessUser->userLogin($uname);
             if ($loginDetails['user_login'] == 1) {
                 $this->_redirect('/user/settings');
             } else {
                 $this->_redirect('/user/listworkouts');
             }
         } else {
             $this->_redirect('/user/loginform');
         }
     } else {
         $this->_redirect('/user/loginform');
     }
 }
示例#24
0
 public function loginAction()
 {
     //  $this->_helper->layout()->disableLayout();
     //$this->_helper->viewRenderer->setNoRender(true);
     $this->view->purifier = Zend_Registry::get('purifier');
     $conf = HTMLPurifier_Config::createDefault();
     $purifier = new HTMLPurifier($conf);
     if ($this->_request->isPost()) {
         //1.Goi ket noi voi Zend Db
         $db = Zend_Registry::get('connectDB');
         //$db = Zend_Db::factory($dbOption['adapter'],$dbOption['params']);
         //2. Khoi tao Zend Autho
         $auth = Zend_Auth::getInstance();
         //3. Khai bao bang va 2 cot se su dung so sanh trong qua tronh login
         $authAdapter = new Zend_Auth_Adapter_DbTable($db);
         $authAdapter->setTableName('users')->setIdentityColumn('username')->setCredentialColumn('password');
         //4. Lay gia tri duoc gui qua tu FORM
         $uname = $purifier->purify($this->_request->getParam('username'));
         $paswd = $purifier->purify($this->_request->getParam('password'));
         // $uname = $this->_request->getParam('username');
         // $paswd = $this->_request->getParam('password');
         //5. Dua vao so sanh voi du lieu khai bao o muc 3
         $authAdapter->setIdentity($uname);
         $authAdapter->setCredential(sha1(salt . $paswd));
         //$authAdapter->setCredential(md5($paswd));
         //6. Kiem tra trang thai cua user neu status = 1 moi duoc login
         $select = $authAdapter->getDbSelect();
         $select->where('status = 1');
         //7. Lay ket qua truy van
         $result = $auth->authenticate($authAdapter);
         $flag = false;
         if ($result->isValid()) {
             //8. Lay nhung du lieu can thiet trong bang users neu login thanh cong
             $data = $authAdapter->getResultRowObject(null, array('password'));
             //9. Luu  nhung du lieu cua member vao session
             $auth->getStorage()->write($data);
             $flag = true;
         }
         if ($flag == true) {
             $this->_redirect('/admin/index');
         }
     }
     //$this->_helper->viewRenderer->setNoRender(FALSE);
 }
示例#25
0
 public function login($email, $password, $passwordEncoded = false)
 {
     $config = $this->getConfig();
     $email = stripslashes($email);
     $password = stripslashes($password);
     $authAdapter = new Zend_Auth_Adapter_DbTable(Gregory::get()->db, $config['table'], $config['identityColumn'], $config['passwordColumn']);
     if (!$passwordEncoded) {
         $password = $this->passwordHash($password);
     }
     // Set the input credential values to authenticate against
     $authAdapter->setIdentity($email);
     $authAdapter->setCredential($password);
     if (isset($config['valid'])) {
         $select = $authAdapter->getDbSelect();
         foreach ($config['valid'] as $key => $value) {
             $select->where($key . ' = ?', $value);
         }
     }
     Gregory::get()->doAction('auth.login', array($email, $password));
     $result = $this->auth->authenticate($authAdapter);
     if ($result->isValid()) {
         $data = $authAdapter->getResultRowObject(null, $config['passwordColumn']);
         $data = Gregory::get()->doFilter('auth.login.identity', $data);
         $this->auth->getStorage()->write($data);
         if ($this->auth->hasIdentity()) {
             $this->setIdentity($this->auth->getIdentity());
         }
         if ($this->hasIdentity() && isset($config['block'])) {
             $identity = $this->getIdentity();
             foreach ($config['block'] as $key => $value) {
                 if (isset($identity->{$key}) && $identity->{$key} == $value) {
                     $this->logout();
                     throw new Exception($config['errors']['blocked']);
                 }
             }
         }
         Gregory::get()->doAction('auth.login.valid', array($data));
     } else {
         Gregory::get()->doAction('auth.login.invalid', array($email, $password));
         throw new Exception($config['errors']['invalid']);
     }
     return $this->getIdentity();
 }
示例#26
0
文件: Login.php 项目: dcsystems/goepa
 /**
  * Classe de Login que utiliza modelo de Usuarios.
  *
  * @package default
  * @author  Marcos Amazonas
  */
 public static function login($login, $senha)
 {
     $dbAdapter = Zend_Db_Table::getDefaultAdapter();
     //Inicia o adaptador Zend_Auth para banco de dados
     $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
     $authAdapter->setTableName('usuario')->setIdentityColumn('login_usuario')->setCredentialColumn('senha_usuario')->setCredentialTreatment('MD5(?)');
     //Define os dados para processar o login
     $authAdapter->setIdentity($login)->setCredential($senha);
     //Faz inner join dos dados do perfil no SELECT do Auth_Adapter
     $select = $authAdapter->getDbSelect();
     $select->joinInner(array('p' => 'tb_perfil_usuario'), 'p.id = usuario.id_perfil', array('nome_perfil' => 'nome', 'id_perfil' => 'id'));
     //Efetua o login
     $auth = Zend_Auth::getInstance();
     $result = $auth->authenticate($authAdapter);
     //Verifica se o login foi efetuado com sucesso
     if ($result->isValid()) {
         //Recupera o objeto do usuário, sem a senha
         $info = $authAdapter->getResultRowObject(null, 'senha_usuario');
         $model_usuario = new Default_Model_Usuario();
         $model_usuario->setFullName($info->nome_usuario);
         $model_usuario->setUserName($info->login_usuario);
         $model_usuario->setIdUsuario($info->id);
         $model_usuario->setIdPerfil($info->id_perfil);
         $model_usuario->setNomePerfil($info->nome_perfil);
         $model_usuario->setRoleId($info->nome_perfil);
         //            $usuario = $model_usuario->buscarPorLoginUsuarios($login);
         //            $perfil = $model_usuario->buscarPerfil($usuario['id_perfil']);
         //            $this->view->nome_perfil = $perfil;
         //
         //            var_dump($perfil);
         //            exit;
         //                $model_usuario->setRoleId("admin");
         //            } else {
         //                $model_usuario->setRoleId("guest");
         //            }
         //$model_usuario->setRoleId($info->nome_perfil);
         $storage = $auth->getStorage();
         $storage->write($model_usuario);
         return true;
     } else {
         throw new Exception('Nome de usuário ou senha inválida.');
     }
 }
示例#27
0
 /**
  * @param string $sUserLogin
  * @param string $sUserPassword
  * @return array
  */
 public function login($sUserLogin, $sUserPassword)
 {
     $oAuth = Zend_Auth::getInstance();
     $oAuthAdapter = new Zend_Auth_Adapter_DbTable();
     $oAuthAdapter->setTableName('user')->setIdentityColumn('login')->setCredentialColumn('password')->setCredentialTreatment('MD5(?)');
     $oAuthAdapter->setIdentity($sUserLogin)->setCredential($sUserPassword);
     $oSelect = $oAuthAdapter->getDbSelect();
     $oSelect->where('user.deleted = ?', 'no');
     $oResult = $oAuth->authenticate($oAuthAdapter);
     $aResult = array('code' => $oResult->getCode());
     if ($oResult->isValid()) {
         $oUser = $oAuthAdapter->getResultRowObject(array('id', 'client', 'first_name', 'last_name', 'login', 'email', 'is_admin'));
         $oAuth->getStorage()->write($oUser);
         $aResult['sessionId'] = Zend_Session::getId();
         $aResult['userInfo'] = $oAuth->getIdentity();
         return $aResult;
     }
     $aResult['messages'] = $oResult->getMessages();
     return $aResult;
 }
示例#28
0
 public static function login($login, $senha)
 {
     $model = new self();
     // Estancia a conexão com o banco de dados
     $db = Zend_Db_Table::getDefaultAdapter();
     // Estancia o Zend_Auth para indica em qual tabela e quais campos fazer a verificação
     $adapter = new Zend_Auth_Adapter_DbTable($db);
     $adapter->setTableName($model->name)->setIdentityColumn('email')->setCredentialColumn('password')->setCredentialTreatment('SHA1(CONCAT(?,salt))');
     // Atribuindo campo extra para a verificação
     $select = $adapter->getDbSelect();
     $select->where('acesso = 1');
     $adapter->setIdentity($login);
     $adapter->setCredential($senha);
     $auth = Zend_Auth::getInstance();
     $result = $auth->authenticate($adapter);
     if ($result->isValid()) {
         // Gravando dados na sessão
         $contents = $adapter->getResultRowObject(null, 'password');
         $contents->childrens_ids = array();
         $db->setFetchMode(Zend_Db::FETCH_OBJ);
         $result = $db->fetchRow('SELECT role FROM ' . $model->perfilName . ' WHERE id = ?', $contents->id_perfil);
         $userchildrens = $db->fetchCol('SELECT id FROM ' . $model->name . ' WHERE parent_id = ?', $contents->id);
         if ($userchildrens) {
             $contents->childrens_ids = $userchildrens;
             foreach ($userchildrens as $children) {
                 $childrens = $db->fetchCol('SELECT id FROM ' . $model->name . ' WHERE parent_id = ?', $children);
                 if ($childrens) {
                     $contents->childrens_ids = array_merge($contents->childrens_ids, $childrens);
                 }
             }
         }
         $contents = (object) array_merge((array) $contents, (array) $result);
         $auth->getStorage()->write($contents);
         return true;
     } else {
         return $model->getMessages($result);
     }
 }
示例#29
0
 public static function login($login, $senha)
 {
     $dbAdapter = Zend_Db_Table::getDefaultAdapter();
     //Inicia o adaptador Zend_Auth para banco de dados
     $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
     $authAdapter->setTableName('TB_OPERADOR')->setIdentityColumn('DS_LOGIN')->setCredentialColumn('DS_SENHA')->setCredentialTreatment('SHA1(?)');
     Zend_Registry::get('logger')->log("authh", Zend_Log::INFO);
     //Define os dados para processar o login
     $authAdapter->setIdentity($login)->setCredential($senha);
     //Faz inner join dos dados do perfil no SELECT do Auth_Adapter
     $select = $authAdapter->getDbSelect();
     $select->join(array('p' => 'perfil'), 'p.id_perfil = TB_OPERADOR.FK_PERFIL', array('nome_perfil' => 'nome'))->joinLeft(array('a' => 'arquivo'), 'a.id_arquivo = TB_OPERADOR.FK_ARQUIVO', array('nome_imagem' => 'nome'));
     //Efetua o login
     $auth = Zend_Auth::getInstance();
     //Zend_Registry::get('logger')->log($select, Zend_Log::INFO);
     $result = $auth->authenticate($authAdapter);
     //Zend_Registry::get('logger')->log($result, Zend_Log::INFO);
     Zend_Registry::get('logger')->log("antes if login isValid", Zend_Log::INFO);
     //Verifica se o login foi efetuado com sucesso
     if ($result->isValid()) {
         //Recupera o objeto do usuário, sem a senha
         $info = $authAdapter->getResultRowObject(null, 'DS_SENHA');
         $usuario = new Application_Model_Usuario();
         //$usuario->setFullName( $info->nome_completo );
         $usuario->setUserName($info->DS_LOGIN);
         $usuario->setFKPerfil($info->FK_PERFIL);
         $usuario->setId($info->ID_OPERADOR);
         $usuario->setRoleId($info->nome_perfil);
         $usuario->setImagem($info->nome_imagem);
         //Zend_Registry::get('logger')->log("papel", Zend_Log::INFO);
         //Zend_Registry::get('logger')->log($usuario, Zend_Log::INFO);
         $storage = $auth->getStorage();
         $storage->write($usuario);
         return true;
     }
     throw new Exception('Usuário ou senha incorreto');
 }
示例#30
0
 public function loginAction()
 {
     $formAuth = new Form_Site_Login();
     $formAuth->submit->setLabel("LOGAR");
     $this->view->formAuth = $formAuth;
     if ($this->getRequest()->isPost()) {
         $data = $this->getRequest()->getPost();
         if ($formAuth->isValid($data)) {
             $email = $formAuth->getValue('administrador_email');
             $senha = $formAuth->getValue('administrador_senha');
             $db = Zend_Registry::get('db');
             $authAdapter = new Zend_Auth_Adapter_DbTable($db);
             $authAdapter->setTableName('administrador')->setIdentityColumn('administrador_email')->setCredentialColumn('administrador_senha')->setIdentity($email)->setCredential(md5($senha));
             $authAdapter->getDbSelect()->where("administrador_ativo = ?", 1);
             $auth = Zend_Auth::getInstance();
             $result = $auth->authenticate($authAdapter);
             if ($result->isValid()) {
                 $this->_redirect("index/");
             } else {
                 die("error");
             }
         }
     }
 }