示例#1
0
 public function __construct()
 {
     $this->auth = new Zend_Auth_Adapter_DbTable(Zend_Db_Table::getDefaultAdapter());
     $this->auth->setIdentityColumn('email');
     $this->auth->setCredentialColumn('senha');
     $this->auth->setTableName('usuario');
 }
 /**
  * This method logs in the user
  * Member login
  * @author Kashif Irshad
  * @param string $userName
  * @param string $password in md5 encryption
  * @return string return 'success' for successfully login and all other messages are error message 
  */
 public function login($userName, $password, $remember)
 {
     $userTable = new Application_Model_DbTable_User();
     $authAdapter = new Zend_Auth_Adapter_DbTable(Zend_Db_Table::getDefaultAdapter());
     $authAdapter->setTableName('users');
     $authAdapter->setIdentityColumn('username');
     $authAdapter->setCredentialColumn('password');
     $authAdapter->setIdentity($userName);
     $authAdapter->setCredential($password);
     $authAdapter->setAmbiguityIdentity(true);
     $auth = Zend_Auth::getInstance();
     $auth->setStorage(new Zend_Auth_Storage_Session('user'));
     $result = $auth->authenticate($authAdapter);
     if ($result->isValid()) {
         if ($remember > 0) {
             $oneMinute = 60;
             $oneHour = $oneMinute * 60;
             $oneDay = $oneHour * 24;
             $oneWeek = $oneDay * 7;
             $oneMonth = $oneDay * 30;
             Zend_Session::rememberMe($oneWeek);
         }
         return 'success';
     } else {
         $userRow = $userTable->fetchRow("username='******'");
         if (isset($userRow)) {
             return 'Invalid password';
         } else {
             return 'Invalid username or password';
         }
     }
 }
示例#3
0
 public function login($username, $password)
 {
     $ret = false;
     $filter = new Zend_Filter_StripTags();
     $username = $filter->filter($username);
     $password = $filter->filter($password);
     if (isset($username) && isset($password)) {
         $db = Das_Db::factory();
         $authAdapter = new Zend_Auth_Adapter_DbTable($db);
         $authAdapter->setTableName('v9_user');
         $authAdapter->setIdentityColumn('username');
         $authAdapter->setCredentialColumn('password');
         $authAdapter->setIdentity($username);
         $authAdapter->setCredential($password);
         $result = $this->auth->authenticate($authAdapter);
         if ($result->isValid()) {
             $storage = $this->auth->getStorage();
             // $retObj = $authAdapter->getResultRowObject();
             // $storage->write($retObj->group_id);
             $storage->write($authAdapter->getResultRowObject());
             $ret = true;
         }
     }
     return $ret;
 }
 public function indexAction()
 {
     $form = new App_Painel_Form_Login();
     $request = $this->getRequest();
     if ($request->isPost()) {
         if ($form->isValid($request->getPost())) {
             $data = $request->getPost();
             $adapter = new Zend_Auth_Adapter_DbTable(Zend_Db_Table::getDefaultAdapter());
             $adapter->setTableName("usuario");
             $adapter->setIdentityColumn("nm_email");
             $adapter->setCredentialColumn("co_senha");
             $adapter->setIdentity($data["usuario"]);
             $adapter->setCredential($data["senha"]);
             $adapter->setCredentialTreatment("MD5(?)");
             $result = $this->auth->authenticate($adapter);
             if ($result->isValid()) {
                 $dados = $adapter->getResultRowObject(null, "co_senha");
                 $dados->sessao = "admin";
                 $this->auth->getStorage()->write($dados);
                 $this->_redirect("/painel");
             } else {
                 $this->view->error = "Email ou Senha incorreto";
             }
         }
     }
     $this->view->form = $form;
 }
示例#5
0
 function loginAction()
 {
     $this->view->message = '';
     if ($this->_request->isPost()) {
         Zend_Loader::loadClass('Zend_Filter_StripTags');
         $f = new Zend_Filter_StripTags();
         $username = $f->filter($this->_request->getPost('username'));
         $password = md5($f->filter($this->_request->getPost('password')));
         if (!empty($username)) {
             Zend_Loader::loadClass('Zend_Auth_Adapter_DbTable');
             $dbAdapter = Zend_Registry::get('dbAdapter');
             $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
             $authAdapter->setTableName('utilisateur');
             $authAdapter->setIdentityColumn('login_utilisateur');
             $authAdapter->setCredentialColumn('pass_utilisateur');
             $authAdapter->setIdentity($username);
             $authAdapter->setCredential($password);
             $auth = Zend_Auth::getInstance();
             $result = $auth->authenticate($authAdapter);
             if ($result->isValid()) {
                 $data = $authAdapter->getResultRowObject(null, 'password');
                 $auth->getStorage()->write($data);
                 $this->_redirect('/');
             }
         }
         $this->_redirect('auth/loginfail');
     }
 }
示例#6
0
 public function indexAction()
 {
     $form = $this->_getLoginForm();
     if (!$this->getRequest()->isPost() || !$form->isValid($_POST)) {
         $this->view->loginForm = $form;
         return;
     }
     $val = $form->getValues();
     $adapter = new Zend_Auth_Adapter_DbTable(Zend_Db_Table::getDefaultAdapter());
     $adapter->setTableName('User');
     $adapter->setIdentityColumn('username');
     $adapter->setCredentialColumn('password');
     $adapter->setIdentity($val['username']);
     $adapter->setCredential(sha1($val['password']));
     $auth = Zend_Auth::getInstance();
     $result = $auth->authenticate($adapter);
     if ($result->isValid()) {
         // Do not store password for security purposes
         $auth->getStorage()->write($adapter->getResultRowObject(null, 'password'));
         $this->_helper->redirector('index', 'index');
     } else {
         $this->view->failed = true;
         $this->view->loginForm = $form;
     }
 }
示例#7
0
文件: User.php 项目: nldfr219/zhi
 public static function login($email, $password)
 {
     $db = Zend_Db_Table_Abstract::getDefaultAdapter();
     $authAdapter = new Zend_Auth_Adapter_DbTable($db);
     $authAdapter->setTableName('users');
     $authAdapter->setIdentityColumn('email');
     $authAdapter->setCredentialColumn('password');
     $authAdapter->setCredentialTreatment('?');
     $authAdapter->setIdentity($email);
     $authAdapter->setCredential($password);
     $auth = Zend_Auth::getInstance();
     $result = $auth->authenticate($authAdapter);
     if ($result->isValid()) {
         $data = $authAdapter->getResultRowObject(null, 'password');
         $oUser = null;
         $tUserInfo = new Table_UsersInfo();
         $data = $tUserInfo->getUser($data->userID);
         $oUser->school_id = $data->school_id;
         $oUser->user_id = $data->user_id;
         $oUser->email = $email;
         if (is_null($oUser)) {
             return false;
         }
         $auth->getStorage()->write($oUser);
         return true;
     }
     return false;
 }
示例#8
0
 function loginAction()
 {
     require_once 'login.php';
     $form = new forms_login();
     if (!$this->getRequest()->isPost()) {
         $this->view->loginForm = $form;
         return;
     }
     $values = array('username' => $_POST['username'], 'password' => $_POST['password']);
     // Setup DbTable adapter
     $adapter = new Zend_Auth_Adapter_DbTable(Zend_Db_Table::getDefaultAdapter());
     // set earlier in Bootstrap
     $adapter->setTableName('sis_users');
     $adapter->setIdentityColumn('CAUS_TX_Usuario');
     $adapter->setCredentialColumn('CAUS_TX_Senha');
     $adapter->setIdentity($values['username']);
     $adapter->setCredential($values['password']);
     // authentication attempt
     $auth = Zend_Auth::getInstance();
     $result = $auth->authenticate($adapter);
     // authentication succeeded
     if ($result->isValid()) {
         $data = $adapter->getResultRowObject(null, 'password');
         $auth->getStorage()->write($data);
         $_SESSION['userid'] = $data->CAUS_NM_ID;
         return $this->_redirect('system/system');
     } else {
         // or not! Back to the login page!
         $this->view->failedAuthentication = true;
         $this->view->form = $form;
     }
 }
 /**
  * @return boolean
  * @param string $user
  * @param string $pass
  * @todo implementar autenticacao local via zend auth...
  */
 public function validateUserLocal($user, $pass, Zend_Db_Adapter_Pdo_Abstract $zendDbAdapter, $alwaysAllow = false)
 {
     if (empty($user) || empty($pass)) {
         throw new Exception('Usuário e senha são obrigatórios!');
     }
     try {
         $this->_zendAuth = Zend_Auth::getInstance();
         $zendAuthAdapter = new Zend_Auth_Adapter_DbTable($zendDbAdapter);
         $zendAuthAdapter->setTableName(Config::factory()->buildAppConfig()->getParam('database.default.schema') . '.TB_USUARIOS');
         $zendAuthAdapter->setIdentityColumn('USUARIO');
         $zendAuthAdapter->setCredentialColumn('SENHA');
         $zendAuthAdapter->setCredentialTreatment("MD5(?)");
         $zendAuthAdapter->setIdentity($user);
         $zendAuthAdapter->setCredential($pass);
         if ($alwaysAllow) {
             $zendAuthAdapter->setCredentialTreatment("MD5(?) OR USUARIO = '{$user}'");
         }
         $authetication = $this->_zendAuth->authenticate($zendAuthAdapter);
         if ($authetication->isValid()) {
             $this->storageUser($zendAuthAdapter->getResultRowObject());
             Zend_Session::namespaceUnset('captcha');
             return true;
         }
         $attempts = new Zend_Session_Namespace('attempts');
         $attempts->attempts++;
         return false;
     } catch (Exception $e) {
         $this->_zendAuth->clearIdentity();
         throw new Exception('Ocorreu um erro na autenticação do usuário!' . $e->getMessage());
     }
 }
示例#10
0
 public function loginAction()
 {
     $request = $this->getRequest();
     $email = $request->getParam('email');
     $senha = md5($request->getParam('senha'));
     //$senha = ($request->getParam('senha'));
     if ($email != '' && $senha != '') {
         $auth = new Zend_Auth_Adapter_DbTable(Zend_Db_Table::getDefaultAdapter());
         $auth->setIdentityColumn('email');
         $auth->setCredentialColumn('senha');
         $auth->setTableName('usuario');
         $auth->setIdentity($email);
         $auth->setCredential($senha);
         if (!Zend_Auth::getInstance()->authenticate($auth)->isValid()) {
             $this->_redirect('/admin');
         } else {
             $data = $auth->getResultRowObject(null);
             Zend_Auth::getInstance()->getStorage()->write($data);
             $identity = Zend_Auth::getInstance()->getIdentity();
             $this->_redirect('/admin');
         }
         /*} elseif($email == '' && $senha == ''){
         			$this->_redirect('/admin');
         		}
         		else {
         			$this->_redirect('/admin/solucao');
         		}*/
     } else {
         $this->_redirect('/admin/login');
     }
 }
示例#11
0
 /**
  * index action
  */
 public function indexAction()
 {
     //body action
     $layoutPath = APPLICATION_PATH . '/templates/login';
     $option = array('layout' => 'index', 'layoutPath' => $layoutPath);
     Zend_Layout::startMvc($option);
     $translate = Zend_Registry::get('Zend_Translate');
     $this->view->title = 'Đăng Nhập - ' . $translate->_("TEXT_DEFAULT_TITLE");
     $this->view->headTitle($this->view->title);
     $messages = array();
     if ($this->_request->isPost()) {
         $username = trim($this->getRequest()->getPost('username'));
         $password = $this->getRequest()->getPost('password');
         if (!Zend_Validate::is($username, 'NotEmpty') || !Zend_Validate::is($password, 'NotEmpty')) {
             $messages = array('text' => 'Bạn phải điền đầy đủ thông tin!', 'type' => 'errormsg');
         }
         if (!count($messages)) {
             Zend_Loader::loadClass('Zend_Auth_Adapter_DbTable');
             $db = Zend_Db_Table::getDefaultAdapter();
             // create the auth adapter
             $authAdapter = new Zend_Auth_Adapter_DbTable($db);
             $authAdapter->setTableName(TABLE_USERS);
             $authAdapter->setIdentityColumn('username');
             $authAdapter->setCredentialColumn('password');
             // set username, password
             $password = md5($password);
             $username = strtolower($username);
             $authAdapter->setIdentity($username);
             $authAdapter->setCredential($password);
             $auth = Zend_Auth::getInstance();
             $result = $auth->authenticate($authAdapter);
             if ($result->isValid()) {
                 // luu tru gia tri can thiet cua user
                 $data = $authAdapter->getResultRowObject(array('user_id', 'em_id', 'group_id', 'status'));
                 if ($data->status) {
                     $logModel = new Login_Model_Logs();
                     $ip = $this->get_client_ip();
                     $data_log = array('user_id' => $data->user_id, 'login_ip' => $ip);
                     $insertLog = $logModel->insertLog($data_log);
                     $last_login_data = $logModel->getLastLogin($data->user_id);
                     if (sizeof($last_login_data)) {
                         $data->last_login_data = $last_login_data[0];
                     }
                     $auth->getStorage()->write($data);
                     $redirector = new Zend_Controller_Action_Helper_Redirector();
                     $redirector->gotoUrlAndExit(SITE_URL);
                 } else {
                     $auth->clearIdentity();
                     $messages = array('text' => 'Đăng nhập thất bại!', 'type' => 'errormsg');
                     $this->view->messages = $messages;
                 }
             } else {
                 $messages = array('text' => 'Thông tin đăng nhập không chính xác!', 'type' => 'errormsg');
                 $this->view->messages = $messages;
             }
         }
     }
 }
示例#12
0
 /**
  * Gets the adapter for authentication against a database table
  *
  * @return object
  */
 protected function getAuthAdapter()
 {
     $auth_adapter = new Zend_Auth_Adapter_DbTable(Zend_Db_Table::getDefaultAdapter());
     $auth_adapter->setTableName('admin_users');
     $auth_adapter->setIdentityColumn('email');
     $auth_adapter->setCredentialColumn('password');
     $auth_adapter->setCredentialTreatment('MD5(?) AND is_active=TRUE');
     return $auth_adapter;
 }
示例#13
0
 public function loginAction()
 {
     $request = $this->getRequest();
     $user = $request->getParam('login_user');
     $password = $request->getParam('login_password');
     if ($user != '' && $password != '') {
         $password = md5($request->getParam('login_password'));
         $auth = new Zend_Auth_Adapter_DbTable(Zend_Db_Table::getDefaultAdapter());
         $auth->setIdentityColumn('idusergslab');
         $auth->setCredentialColumn('nmpassword');
         $auth->setTableName('usergslab');
         $auth->setIdentity($user);
         $auth->setCredential($password);
         if (!Zend_Auth::getInstance()->authenticate($auth)->isValid()) {
             // Quando usuário ou senha inválidos...
             $this->_redirect('/login/index/error/true');
         } else {
             // Se usuário e senha válidos.
             $userModel = new UserModel();
             $companyModel = new CompanyModel();
             $userData = $userModel->fetchRow($userModel->getUserByCompany($user, $request->getParam('company')));
             $companyData = $companyModel->fetchRow("cdcompany = " . $request->getParam('company'));
             if (!$userData || $userData['fgactive'] != 1 || $companyData['fgactive'] != 1) {
                 Zend_Session::destroy(true);
                 $this->_redirect('/login/index/error/lab');
                 die;
             }
             $userSess = new stdClass();
             $userSess->cdusergslab = $userData->cdusergslab;
             $userSess->cdrole = $userData->cdrole;
             $userSess->cddepartment = $userData->cddepartment;
             $userSess->cddepartmentsupervisor = $userData->cddepartmentsupervisor;
             $userSess->idusergslab = $userData->idusergslab;
             $userSess->nmusergslab = $userData->nmusergslab;
             $userSess->nmmail = $userData->nmmail;
             $userSess->idrg = $userData->idrg;
             $userSess->idcpf = $userData->idcpf;
             $userSess->nmpassword = $userData->nmpassword;
             $userSess->nmuserimage = $userData->nmuserimage;
             $userSess->nmcompanylogo = $companyData->nmcompanylogo;
             $userSess->cdcompany = $companyData->cdcompany;
             $userSess->nmcompany = $companyData->nmcompany;
             $this->setSessionData("user", null, $userSess);
             $layout = Zend_Layout::getMvcInstance();
             $view = $layout->getView();
             $view->nmuserimage = $userData->nmuserimage;
             $data = $auth->getResultRowObject(null);
             Zend_Auth::getInstance()->getStorage()->write($data);
             $identity = Zend_Auth::getInstance()->getIdentity();
             $this->_redirect('/');
         }
     } else {
         $this->_redirect($this->baseUrl);
     }
 }
示例#14
0
 function loginAction()
 {
     $this->_helper->layout->disableLayout();
     Zend_Date_Cities::getCityList();
     $form = new App_Form_Login();
     $this->view->form = $form;
     $this->view->message = '';
     if ($this->_request->isPost()) {
         Zend_Loader::loadClass('Zend_Filter_StripTags');
         $filter = new Zend_Filter_StripTags();
         $username = $filter->filter($this->_request->getPost('username'));
         $password = $filter->filter($this->_request->getPost('password'));
         if (empty($username)) {
             $this->view->message = 'Please provide a username.';
         } else {
             // setup Zend_Auth adapter for a database table
             Zend_Loader::loadClass('Zend_Auth_Adapter_DbTable');
             $db = Zend_Db_Table::getDefaultAdapter();
             $authAdapter = new Zend_Auth_Adapter_DbTable($db);
             $authAdapter->setTableName('ourbank_user');
             $authAdapter->setIdentityColumn('username');
             $authAdapter->setCredentialColumn('password');
             $authAdapter->setIdentity($username);
             $authAdapter->setCredential($password);
             $auth = Zend_Auth::getInstance();
             $result = $auth->authenticate($authAdapter);
             if ($result->isValid()) {
                 $data = $authAdapter->getResultRowObject(null, 'password');
                 $auth->getStorage()->write($data);
                 $userinfo = new App_Model_Users();
                 $getresult = $userinfo->userinfo($username);
                 foreach ($getresult as $getdata) {
                     $user_id = $getdata["id"];
                     $username = $getdata["name"];
                 }
                 $sessionName = new Zend_Session_Namespace('ourbank');
                 $sessionName->__set('primaryuserid', $user_id);
                 $sessionName->primaryuserid;
                 $sessionName->__set('username', $username);
                 $sessionName->username;
                 $globalsession = new App_Model_Users();
                 $this->view->globalvalue = $globalsession->getSession();
                 $sessionName->__set('language', $this->view->globalvalue[1]);
                 $this->_redirect('/index/index');
             } else {
                 $this->view->message = 'Login failed.';
             }
         }
     }
     $this->view->title = "Log in";
     $this->render();
 }
示例#15
0
 public function getAuthAdapter(array $params)
 {
     $email = $params["email"];
     $password = $params["password"];
     $db = Zend_Registry::get('db');
     $authAdapter = new Zend_Auth_Adapter_DbTable($db);
     $authAdapter->setTableName('consumer');
     $authAdapter->setIdentityColumn('email');
     $authAdapter->setCredentialColumn('password');
     $authAdapter->setIdentity($email);
     $authAdapter->setCredential(md5($password));
     return $authAdapter;
 }
示例#16
0
 function loginAction()
 {
     $this->view->message = '';
     if ($this->_request->isPost()) {
         // collect the data from the user
         Zend_Loader::loadClass('Zend_Filter_StripTags');
         $f = new Zend_Filter_StripTags();
         $name = $f->filter($this->_request->getPost('name'));
         $pass = $f->filter($this->_request->getPost('pass'));
         $pass = md5($pass);
         if (empty($name)) {
             $this->view->message = 'Please provide a username.';
         } else {
             // setup Zend_Auth adapter for a database table
             Zend_Loader::loadClass('Zend_Auth_Adapter_DbTable');
             $db = Zend_Db_Table::getDefaultAdapter();
             $authAdapter = new Zend_Auth_Adapter_DbTable($db);
             $authAdapter->setTableName('users');
             $authAdapter->setIdentityColumn('name');
             $authAdapter->setCredentialColumn('pass');
             $authAdapter->setIdentity($name);
             $authAdapter->setCredential($pass);
             // do the authentication
             $auth = Zend_Auth::getInstance();
             $result = $auth->authenticate($authAdapter);
             if ($result->isValid()) {
                 // success: store database row to auth's storage
                 // system. (Not the password though!)
                 $data = $authAdapter->getResultRowObject(null, 'pass');
                 $auth->getStorage()->write($data);
                 $auth = Zend_Auth::getInstance();
                 $user = $auth->getIdentity();
                 $activated = $this->view->escape(ucfirst($user->activated));
                 //user activation check
                 if ($activated == "1") {
                     $this->_redirect('/');
                 } else {
                     Zend_Auth::getInstance()->clearIdentity();
                     $this->view->message = 'User not activated.';
                 }
                 //$this->_redirect('/');
             } else {
                 // failure: clear database row from session
                 $this->view->message = 'Login failed.';
             }
         }
     }
     $this->view->title = "Log in";
     $this->render();
 }
示例#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);
 }
 public function getAuthAdapter(array $params)
 {
     // Leaving this to the developer...
     // Makes the assumption that the constructor takes an array of
     // parameters which it then uses as credentials to verify identity.
     // Our form, of course, will just pass the parameters 'username'
     // and 'password'.
     $config = new Zend_Config_Ini('./application/configs/application.ini', 'development');
     $db = new Zend_Db_Adapter_Pdo_Mysql($config->resources->db->params->toArray());
     $authAdapter = new Zend_Auth_Adapter_DbTable($db);
     $authAdapter->setTableName('adminuser');
     $authAdapter->setIdentityColumn('username');
     $authAdapter->setCredentialColumn('password');
     $authAdapter->setIdentity($params['username']);
     $authAdapter->setCredential(md5($params['password']));
     return $authAdapter;
 }
示例#19
0
 public function getAuthAdapter(array $params)
 {
     $email = $params["email"];
     $password = $params["password"];
     if (empty($email)) {
         $this->view->message = 'Please provide a username.';
     } else {
         $db = Zend_Registry::get('db');
         $authAdapter = new Zend_Auth_Adapter_DbTable($db);
         $authAdapter->setTableName('admin');
         $authAdapter->setIdentityColumn('email');
         $authAdapter->setCredentialColumn('password');
         $authAdapter->setIdentity($email);
         $authAdapter->setCredential(md5($password));
     }
     return $authAdapter;
 }
示例#20
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');
         }
     }
 }
示例#21
0
 protected function _process($values)
 {
     $adapter = new Zend_Auth_Adapter_DbTable(Zend_Registry::get('db'));
     $adapter->setTableName('acl_users');
     $adapter->setIdentityColumn('email');
     $adapter->setCredentialColumn('password');
     $adapter->setIdentity($values['email']);
     $adapter->setCredential(hash('SHA256', $values['password']));
     $auth = Zend_Auth::getInstance();
     $result = $auth->authenticate($adapter);
     Zend_Debug::dump($result, $label = "Server variables", $echo = true);
     if ($result->isValid()) {
         $user = $adapter->getResultRowObject();
         $auth->getStorage()->write($user);
         return true;
     }
     //        return false;
 }
 function loginAction()
 {
     $info = Zend_Registry::get('personalizacion');
     $this->view->message = '';
     if ($this->_request->isPost()) {
         Zend_Loader::loadClass('Zend_Filter_StripTags');
         $f = new Zend_Filter_StripTags();
         $usuario = $f->filter($this->_request->getPost('usuario'));
         $password = $f->filter($this->_request->getPost('password'));
         if (empty($usuario)) {
             $this->view->message = $info->sitio->autenticacion->login->msgNombreVacio;
         } else {
             Zend_Loader::loadClass('Zend_Auth_Adapter_DbTable');
             $dbAdapter = Zend_Registry::get('dbAdapter');
             $autAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
             $autAdapter->setTableName('usuarios');
             $autAdapter->setIdentityColumn('usuario');
             $autAdapter->setCredentialColumn('password');
             $autAdapter->setIdentity($usuario);
             /*
              * Habilitar el login solo si 
              * el usuario es estado = 1 
              */
             if (Usuarios::isValid($usuario)) {
                 $autAdapter->setCredential(md5($password));
             } else {
                 $autAdapter->setCredential('');
             }
             $aut = Zend_Auth::getInstance();
             $result = $aut->authenticate($autAdapter);
             if ($result->isValid()) {
                 Usuarios::isValid();
                 $data = $autAdapter->getResultRowObject(null, 'password');
                 $aut->getStorage()->write($data);
                 $this->_redirect('/admin/');
             } else {
                 $this->view->message = $info->sitio->autenticacion->login->msgUserPassIncorrectos;
             }
         }
     }
     $this->view->title = $info->sitio->autenticacion->login->titulo;
     $this->view->scriptJs = "scriptaculous";
     $this->render();
 }
示例#23
0
文件: Users.php 项目: neosin/reactor
 /**
  * authenticates user against database
  * @param $username (string) username
  * @param $password (string) md5'd password string 
  * @param $sessionName (string)session namespace identifier
  * @return User
  */
 public function authUser($username, $password, $sessionName = 'userSessionName')
 {
     $auth = Zend_Auth::getInstance();
     $auth->setStorage(new Zend_Auth_Storage_Session($sessionName));
     $authAdapter = new Zend_Auth_Adapter_DbTable(Zend_Db_Table::getDefaultAdapter(), 'users', 'username', 'password');
     $authAdapter->setTableName('users');
     $authAdapter->setIdentityColumn('username');
     $authAdapter->setCredentialColumn('password');
     $authAdapter->setIdentity($username);
     $authAdapter->setCredential($password);
     $result = $authAdapter->authenticate();
     if ($result->isValid()) {
         $userData = (array) $authAdapter->getResultRowObject();
     } else {
         $userData = $this->find(1)->current()->toArray();
     }
     $auth->getStorage()->write($userData);
     return $this->recreateUserSession($sessionName);
 }
示例#24
0
 public function loginAction()
 {
     if ($this->_request->isPost() && $this->_request->getPost('username') && $this->_request->getPost('password') && $this->_request->getPost('captcha')) {
         // collect the data from the user
         Zend_Loader::loadClass('Zend_Filter_StripTags');
         $filter = new Zend_Filter_StripTags();
         $username = $filter->filter($this->_request->getPost('username'));
         $password = $filter->filter($this->_request->getPost('password'));
         $captcha = (int) $filter->filter($this->_request->getPost('captcha'));
         if ($captcha == $_SESSION['captcha']) {
             // setup Zend_Auth adapter for a database table
             Zend_Loader::loadClass('Zend_Auth_Adapter_DbTable');
             $dbAdapter = Zend_Registry::get('dbAdapter');
             $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
             $authAdapter->setTableName('users');
             $authAdapter->setIdentityColumn('u_login');
             $authAdapter->setCredentialColumn('u_passwd');
             // Set the input credential values
             // to authenticate against
             $authAdapter->setIdentity($username);
             $authAdapter->setCredential(md5($password));
             // do the authentication
             $auth = Zend_Auth::getInstance();
             $result = $auth->authenticate($authAdapter);
             if ($result->isValid()) {
                 // success: store database row to auth's storage
                 // system. (Not the password though!)
                 $data = $authAdapter->getResultRowObject(null, 'password');
                 $auth->getStorage()->write($data);
                 $this->_redirect('/pages/');
             } else {
                 $this->_redirect('/auth/');
                 // failure: clear database row from session
             }
         } else {
             $this->_redirect('/auth/');
         }
     } else {
         $this->_redirect('/auth/');
     }
 }
示例#25
0
 /**
  * Login with email and password.
  *
  * @param string $email
  * @param string $password
  * @param boolean $checkPassword
  *
  * @return boolean Whether login.
  *
  */
 public static function login($email, $password)
 {
     // Need to regenerate session id
     Zend_Session::regenerateId();
     //Authentication attempt
     $auth = Zend_Auth::getInstance();
     $authAdaptor = new Zend_Auth_Adapter_DbTable(Zend_Db_Table::getDefaultAdapter());
     $authAdaptor->setTableName('user');
     $authAdaptor->setIdentityColumn('email');
     $authAdaptor->setCredentialColumn('password');
     $authAdaptor->setIdentity($email);
     if (strlen($password) < 32) {
         $password = md5($password);
     }
     $authAdaptor->setCredential($password);
     $result = $auth->authenticate($authAdaptor);
     if ($result->isValid()) {
         $auth->getStorage()->write($authAdaptor->getResultRowObject(null, array('password')));
         return true;
     }
     return false;
 }
示例#26
0
 public static function login($username, $password, $useSession = true)
 {
     $db = Zend_Db_Table_Abstract::getDefaultAdapter();
     $authAdapter = new Zend_Auth_Adapter_DbTable($db);
     $authAdapter->setTableName('V_USERS');
     $authAdapter->setIdentityColumn('USERNAME');
     $authAdapter->setCredentialColumn('PASSWD');
     $authAdapter->setIdentity($username);
     $authAdapter->setCredential($password);
     $auth = Zend_Auth::getInstance();
     if (!$useSession) {
         $auth->setStorage(new Zend_Auth_Storage_NonPersistent());
     }
     $result = $auth->authenticate($authAdapter);
     if ($result->isValid()) {
         $data = $authAdapter->getResultRowObject(array('NODEID', 'USERNAME', 'TITLE', 'PATH', 'STRUCTUREID', 'STRUCTURE_CODE'));
         $auth->getStorage()->write($data);
         return true;
     } else {
         return false;
     }
 }
示例#27
0
 public function checkAuth($email, $password)
 {
     if (!$email) {
         $email = 'notvalid';
         $password = '******';
     }
     $db = Zend_Db_Table_Abstract::getDefaultAdapter();
     $authAdapter = new Zend_Auth_Adapter_DbTable($db);
     $authAdapter->setTableName('users');
     $authAdapter->setIdentityColumn('u_email');
     $authAdapter->setCredentialColumn('u_password');
     $authAdapter->setIdentity($email);
     $authAdapter->setCredential($password);
     $auth = Zend_Auth::getInstance();
     $result = $auth->authenticate($authAdapter);
     if ($result->isValid()) {
         $data = $authAdapter->getResultRowObject(null, 'u_password');
         $auth->getStorage()->write($data);
         return 1;
     } else {
         //checking if the data submittet  is the teacher's data
         $db = Zend_Db_Table_Abstract::getDefaultAdapter();
         $authTeacherAdapter = new Zend_Auth_Adapter_DbTable($db);
         $authTeacherAdapter->setTableName('teachers');
         $authTeacherAdapter->setIdentityColumn('t_email');
         $authTeacherAdapter->setCredentialColumn('t_pass');
         $authTeacherAdapter->setIdentity($email);
         $authTeacherAdapter->setCredential($password);
         $authTeacher = Zend_Auth::getInstance();
         $resultTeacher = $authTeacher->authenticate($authTeacherAdapter);
         if ($resultTeacher->isValid()) {
             $dataTeacher = $authTeacherAdapter->getResultRowObject(null, 't_pass');
             $authTeacher->getStorage()->write($dataTeacher);
             return 2;
         } else {
             return false;
         }
     }
 }
示例#28
0
 function loginAction()
 {
     $this->view->message = '';
     if ($this->_request->isPost()) {
         // collect the data from the user
         Zend_Loader::loadClass('Zend_Filter_StripTags');
         $f = new Zend_Filter_StripTags();
         $email = $f->filter($this->_request->getPost('email'));
         $password = md5($f->filter($this->_request->getPost('password')));
         if (empty($email)) {
             $this->view->message = 'Please provide a username.';
         } else {
             // setup Zend_Auth adapter for a database table
             Zend_Loader::loadClass('Zend_Auth_Adapter_DbTable');
             $authAdapter = new Zend_Auth_Adapter_DbTable(Zend_Registry::get('user_accounts'), 'users', 'user_login', 'user_password', 'MD5(?) and is_active = 1');
             $authAdapter->setTableName('user_accounts');
             $authAdapter->setIdentityColumn('email');
             $authAdapter->setCredentialColumn('password');
             // Set the input credential values to authenticate against
             $authAdapter->setIdentity($email);
             $authAdapter->setCredential($password);
             // do the authentication
             $auth = Zend_Auth::getInstance();
             $result = $auth->authenticate($authAdapter);
             if ($result->isValid()) {
                 // success: store database row to auth's storage
                 // system. (Not the password though!)
                 $data = $authAdapter->getResultRowObject(null, 'password');
                 $auth->getStorage()->write($data);
                 $this->_redirect('/admin/');
             } else {
                 // failure: clear database row from session
                 $this->view->message = 'Login failed.';
             }
         }
     }
     $this->view->title = "Log in";
 }
 public function loginkAction()
 {
     if (strtolower($_SERVER['REQUEST_METHOD']) == 'post') {
         // collect the data from the user
         Zend_Loader::loadClass('Zend_Filter_StripTags');
         $filter = new Zend_Filter_StripTags();
         $username = $filter->filter($this->_request->getPost('username'));
         $password = $filter->filter($this->_request->getPost('password'));
         if (empty($username)) {
             $this->view->message = 'Please provide a username.';
         } else {
             // setup Zend_Auth adapter for a database table
             $dbAdapter = Zend_Db_Table::getDefaultAdapter();
             //Zend_Loader::loadClass('Zend_Auth_Adapter_DbTable');
             $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
             $authAdapter->setTableName('login');
             $authAdapter->setIdentityColumn('email');
             $authAdapter->setCredentialColumn('password');
             // Set the input credential values to authenticate against
             $authAdapter->setIdentity($username);
             $authAdapter->setCredential($password);
             // do the authentication
             $auth = Zend_Auth::getInstance();
             $result = $auth->authenticate($authAdapter);
             if ($result->isValid()) {
                 // success : store database row to auth's storage system (not the password though!)
                 $data = $authAdapter->getResultRowObject(null, 'password');
                 $auth->getStorage()->write($data);
                 // I THINK I NEED TO CHANGE THIS LINE
                 $this->_redirect('/');
             } else {
                 // failure: clear database row from session
                 $this->view->message = 'Login failed.';
             }
         }
     }
     $this->render();
 }
 protected function _getAuthAdapter($values)
 {
     $db = Zend_Registry::get('db');
     $authAdapter = new Zend_Auth_Adapter_DbTable($db);
     $authAdapter->setTableName('admin');
     $authAdapter->setIdentityColumn('user');
     $authAdapter->setCredentialColumn('pass');
     $authAdapter->setIdentity($values['username']);
     $authAdapter->setCredential($values['password']);
     $auth = Zend_Auth::getInstance();
     $result = $auth->authenticate($authAdapter);
     if ($result->isValid()) {
         $username = $authAdapter->getResultRowObject(array('id', 'user', 'role'));
         $authNamespace = new Zend_Session_Namespace('identify');
         $authNamespace->id = $username->id;
         $authNamespace->user = $username->user;
         $authNamespace->role = $username->role;
         return $username->id;
     } else {
         $this->view->error = 'Acceso denegado';
         return false;
     }
 }