Пример #1
0
     if (!function_exists('p')) {
         function p($string)
         {
             print OC_Util::sanitizeHTML($string);
         }
     }
 }
 require_once 'user_saml/user_saml.php';
 OCP\App::registerAdmin('user_saml', 'settings');
 // register user backend
 OC_User::useBackend('SAML');
 OC::$CLASSPATH['OC_USER_SAML_Hooks'] = 'user_saml/lib/hooks.php';
 OCP\Util::connectHook('OC_User', 'post_createUser', 'OC_USER_SAML_Hooks', 'post_createUser');
 OCP\Util::connectHook('OC_User', 'post_login', 'OC_USER_SAML_Hooks', 'post_login');
 OCP\Util::connectHook('OC_User', 'logout', 'OC_USER_SAML_Hooks', 'logout');
 $forceLogin = OCP\Config::getAppValue('user_saml', 'saml_force_saml_login', false) && shouldEnforceAuthentication();
 if (isset($_GET['app']) && $_GET['app'] == 'user_saml' || !OCP\User::isLoggedIn() && $forceLogin && !isset($_GET['admin_login'])) {
     require_once 'user_saml/auth.php';
     if (!OC_User::login('', '')) {
         $error = true;
         OCP\Util::writeLog('saml', 'Error trying to authenticate the user', OCP\Util::DEBUG);
     }
     if (isset($_GET["linktoapp"])) {
         $path = OC::$WEBROOT . '/?app=' . $_GET["linktoapp"];
         if (isset($_GET["linktoargs"])) {
             $path .= '&' . urldecode($_GET["linktoargs"]);
         }
         header('Location: ' . $path);
         exit;
     }
     OC::$REQUESTEDAPP = '';
Пример #2
0
 * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
 *
 * You should have received a copy of the GNU Affero General Public
 * License along with this library.  If not, see <http://www.gnu.org/licenses/>.
 *
 */
if (OCP\App::isEnabled('user_cas')) {
    require_once 'user_cas/user_cas.php';
    OCP\App::registerAdmin('user_cas', 'settings');
    // register user backend
    \OC_User::useBackend('CAS');
    OC::$CLASSPATH['OC_USER_CAS_Hooks'] = 'user_cas/lib/hooks.php';
    OCP\Util::connectHook('OC_User', 'post_createUser', 'OC_USER_CAS_Hooks', 'post_createUser');
    OCP\Util::connectHook('OC_User', 'post_login', 'OC_USER_CAS_Hooks', 'post_login');
    OCP\Util::connectHook('OC_User', 'logout', 'OC_USER_CAS_Hooks', 'logout');
    $force_login = shouldEnforceAuthentication();
    if (isset($_GET['app']) && $_GET['app'] == 'user_cas' || $force_login) {
        if (OC_USER_CAS::initialized_php_cas()) {
            phpCAS::forceAuthentication();
            $user = phpCAS::getUser();
            $application = new \OC\Core\Application();
            $loginController = $application->getContainer()->query('LoginController');
            $loginController->tryLogin($user, NULL, NULL);
            if (isset($_SERVER["QUERY_STRING"]) && !empty($_SERVER["QUERY_STRING"]) && $_SERVER["QUERY_STRING"] != 'app=user_cas') {
                header('Location: ' . OC::$WEBROOT . '/?' . $_SERVER["QUERY_STRING"]);
                exit;
            }
        }
        OC::$REQUESTEDAPP = '';
        \OC_Util::redirectToDefaultPage();
    }