Exemplo n.º 1
0
 public function IsEnabled()
 {
     global $sso_settings;
     if (!$sso_settings["sso_google"]["enabled"]) {
         return false;
     }
     if ($sso_settings["sso_google"]["client_id"] == "" || $sso_settings["sso_google"]["client_secret"] == "") {
         return false;
     }
     if (!SSO_IsIPAllowed($sso_settings["sso_google"]["iprestrict"]) || SSO_IsSpammer($sso_settings["sso_google"]["iprestrict"])) {
         return false;
     }
     return true;
 }
Exemplo n.º 2
0
 public function IsEnabled()
 {
     global $sso_settings, $sso_db, $sso_db_apikeys;
     if (!$sso_settings["sso_remote"]["enabled"]) {
         return false;
     }
     if (!SSO_IsIPAllowed($sso_settings["sso_remote"]["iprestrict"])) {
         return false;
     }
     if (!isset($_REQUEST["sso_remote_id"]) || !is_string($_REQUEST["sso_remote_id"])) {
         return false;
     }
     $remoteid = explode("-", $_REQUEST["sso_remote_id"]);
     if (count($remoteid) != 2) {
         return false;
     }
     $sso_db_sso_remote = SSO_DB_PREFIX . "p_sso_remote";
     try {
         $row = $sso_db->GetRow("SELECT", array("*", "FROM" => "?", "WHERE" => "id = ? AND remotekey = ?"), $sso_db_sso_remote, $remoteid[1], $remoteid[0]);
         if ($row === false) {
             return false;
         }
         $this->info["row"] = $row;
         $this->info["display_name"] = BB_Translate("%s Login", $row->name);
         $info = unserialize($row->info);
         if (!isset($info["iprestrict"]) || !SSO_IsIPAllowed($info["iprestrict"]) || SSO_IsSpammer($info["iprestrict"])) {
             return false;
         }
         $this->info["row_info"] = $info;
         $apirow = $sso_db->GetRow("SELECT", array("*", "FROM" => "?", "WHERE" => "id = ?"), $sso_db_apikeys, $row->apikey_id);
         if ($apirow === false) {
             return false;
         }
         $this->info["apirow"] = $apirow;
     } catch (Exception $e) {
         SSO_DisplayError("A database error has occurred.  Most likely cause:  Bad SQL query.");
     }
     // Set a cookie so future requests succeed.
     if (!isset($_COOKIE["sso_remote_id"])) {
         SetCookieFixDomain("sso_remote_id", $_REQUEST["sso_remote_id"], 0, "", "", SSO_IsSSLRequest(), true);
     }
     return true;
 }
Exemplo n.º 3
0
 public function IsEnabled()
 {
     global $sso_settings, $g_sso_login_modules;
     if (!$sso_settings["sso_login"]["enabled"]) {
         return false;
     }
     if (($sso_settings["sso_login"]["install_type"] == "email_username" || $sso_settings["sso_login"]["install_type"] == "username") && $sso_settings["sso_login"]["map_username"] == "") {
         return false;
     }
     if (($sso_settings["sso_login"]["install_type"] == "email_username" || $sso_settings["sso_login"]["install_type"] == "email") && $sso_settings["sso_login"]["map_email"] == "") {
         return false;
     }
     if (!SSO_IsIPAllowed($sso_settings["sso_login"]["iprestrict"]) || SSO_IsSpammer($sso_settings["sso_login"]["iprestrict"])) {
         return false;
     }
     foreach ($g_sso_login_modules as $key => $info) {
         if ($sso_settings["sso_login"]["modules"][$key]["_a"]) {
             $module = "sso_login_module_" . $key;
             $instance = new $module();
             if (!$instance->IsAllowed()) {
                 return false;
             }
         }
     }
     return true;
 }
Exemplo n.º 4
0
 public function IsEnabled()
 {
     global $sso_settings;
     if (!function_exists("ldap_connect") || !$sso_settings["sso_ldap"]["enabled"]) {
         return false;
     }
     if ($sso_settings["sso_ldap"]["server"] == "" || $sso_settings["sso_ldap"]["dn"] == "" || $sso_settings["sso_ldap"]["map_username"] == "") {
         return false;
     }
     if (!SSO_IsIPAllowed($sso_settings["sso_ldap"]["iprestrict"]) || SSO_IsSpammer($sso_settings["sso_ldap"]["iprestrict"])) {
         return false;
     }
     return true;
 }