public static getPasswordHash ( $username, $plainTextPassword ) : boolean | false | string | ||
$username | ||
$plainTextPassword | ||
return | boolean | false | string |
private function installUser(\Pimcore\Model\User\Role $userRole) { $userM = new \Pimcore\Model\User(); $user = $userM->getByName('kunde'); if ($user !== FALSE) { return $user; } $user = \Pimcore\Model\User::create(array('parentId' => 0, 'name' => 'kunde', 'password' => \Pimcore\Tool\Authentication::getPasswordHash('kunde', 'kunde'), 'active' => 1, 'language' => 'de', 'admin' => FALSE, 'roles' => array(0 => $userRole->getId()))); $user->save(); return $user; }
/** * @param array $config */ public function createOrUpdateUser($config = array()) { $defaultConfig = array("username" => "admin", "password" => md5(microtime())); $settings = array_replace_recursive($defaultConfig, $config); if ($user = Model\User::getByName($settings["username"])) { $user->delete(); } $user = Model\User::create(array("parentId" => 0, "username" => $settings["username"], "password" => \Pimcore\Tool\Authentication::getPasswordHash($settings["username"], $settings["password"]), "active" => true)); $user->setAdmin(true); $user->save(); }
protected function execute(InputInterface $input, OutputInterface $output) { $user = $input->getOption("user"); if (!$user) { $this->writeError("No username/ID given"); } $method = is_numeric($user) ? 'getById' : 'getByName'; $user = User::$method($user); if (!$user) { $this->writeError("User with name " . $user . " could not be found. Exiting"); exit; } if ($input->getOption("password")) { $plainPassword = $input->getOption("password"); } else { $plainPassword = false; while (empty($plainPassword)) { $plainPassword = $this->promtSilent(); } } $password = \Pimcore\Tool\Authentication::getPasswordHash($user->getName(), $plainPassword); $user->setPassword($password); $user->save(); $this->output->writeln("Password for user " . $user->getName() . " reset successfully."); }
public function updateCurrentUserAction() { $this->protectCSRF(); $user = $this->getUser(); if ($user != null) { if ($user->getId() == $this->getParam("id")) { $values = \Zend_Json::decode($this->getParam("data")); unset($values["name"]); unset($values["id"]); unset($values["admin"]); unset($values["permissions"]); unset($values["roles"]); unset($values["active"]); if (!empty($values["new_password"])) { $oldPasswordCheck = false; if (empty($values["old_password"])) { // if the user want to reset the password, the old password isn't required $oldPasswordCheck = Tool\Session::useSession(function ($adminSession) use($oldPasswordCheck) { if ($adminSession->password_reset) { return true; } return false; }); } else { // the password has to match $checkUser = Tool\Authentication::authenticatePlaintext($user->getName(), $values["old_password"]); if ($checkUser) { $oldPasswordCheck = true; } } if ($oldPasswordCheck && $values["new_password"] == $values["retype_password"]) { $values["password"] = Tool\Authentication::getPasswordHash($user->getName(), $values["new_password"]); } else { $this->_helper->json(["success" => false, "message" => "password_cannot_be_changed"]); } } $user->setValues($values); $user->save(); $this->_helper->json(["success" => true]); } else { \Logger::warn("prevented save current user, because ids do not match. "); $this->_helper->json(false); } } else { $this->_helper->json(false); } }
/** * Enables the test mode. X-pimcore-unit-test-request=true header will be sent. */ public function enableTestMode() { $this->client->setHeaders("X-pimcore-unit-test-request", "true"); if (!$this->getApiKey()) { $username = "******"; $password = $username; $user = User::getByName("{$username}"); if (!$user) { $apikey = md5(time()) . md5($username); $user = User::create(array("parentId" => 0, "username" => "rest", "password" => \Pimcore\Tool\Authentication::getPasswordHash($username, $username), "active" => true, "apiKey" => $apikey, "admin" => true)); } $apikey = $user->getApiKey(); $this->setApiKey($apikey); } $this->setTestMode(true); }