diff --git a/unl.php b/unl.php
index 23435cdbcc8cabfb437bd5bfb50c02bc0ab8c0bb..2b716bd72e2f72eb5d5a233f518eac7c3730bc6a 100644
--- a/unl.php
+++ b/unl.php
@@ -48,19 +48,23 @@ if (!function_exists('wp_validate_auth_cookie')) {
 }
 
 function unl_set_current_user()
-{   
+{
+	$auth = NULL;
     if (array_key_exists('unl_sso', $_COOKIE)) {
         $auth = phpCAS::checkAuthentication();
-        if ($auth) {
-            $username = phpCAS::getUser();
-            $user = new WP_User($username);
-            if (!$user->ID) {
-            	$user = unl_import_user($username);
-            	print_r($user);
-            }
-            setup_userdata($user->ID);
-            $GLOBALS['current_user'] = $user;
+    }
+    if ($GLOBALS['blogname'] == 'wp-signup.php') {
+    	$auth = phpCAS::forceAuthentication();
+    }
+    if ($auth) {
+        $username = phpCAS::getUser();
+        $user = new WP_User($username);
+        if (!$user->ID) {
+        	$user = unl_import_user($username);
+        	print_r($user);
         }
+        setup_userdata($user->ID);
+        $GLOBALS['current_user'] = $user;
     }
 }