コード例 #1
0
 public function act_edit_security()
 {
     include_once 'lib_user.inc';
     $user = UserHelper::loadFromUsername($_SESSION['username']);
     $this->user = $user;
     $result = $user->getGASk();
     $this->url = $result['url'];
     $this->secret = $result['secret'];
     $this->isYubikeyAPIConfigured = $this->isYubikeyAPIConfigured();
     $this->wrongcode = false;
     if ($_POST['desiredMethod'] == "none") {
         $user->disableTSV();
         return true;
     }
     if ($_POST['desiredMethod'] == "MGA" && isset($_POST['GACode'])) {
         $resp = $user->TSVSaveMGA($_POST['GACode']);
         if (!$resp) {
             $this->wrongcode = true;
         }
         return true;
     }
     if ($_POST['desiredMethod'] == "yubikey" && $this->isYubikeyAPIConfigured()) {
         if (isset($_POST['YubiKeyCode'])) {
             $verifyCode = $this->getYubiClient()->verify($_POST['YubiKeyCode']);
             if (PEAR::isError($verifyCode)) {
                 $this->wrongcode = $verifyCode->message;
                 return false;
             }
             $parsedCode = $this->parseYubicoCode($_POST['YubiKeyCode']);
             $user->TSVSaveYubiKey($parsedCode['prefix']);
             return true;
         }
     }
 }