root

Changeset 382

Show
Ignore:
Timestamp:
11/12/08 14:05:32 (2 years ago)
Author:
wbond
Message:

Changed fAuthorization to regenerate the session id whenever new user info is set

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • fAuthorization.php

    r338 r382 Hide Line Numbers
    5959    static private $named_ip_ranges = array(); 
    6060     
     61    /** 
     62     * If the session id has been regenerated 
     63     *  
     64     * @var boolen 
     65     */ 
     66    static private $regenerated = FALSE; 
     67     
    6168     
    6269    /** 
     
    299306     
    300307    /** 
     308     * Regenerates the session id, but only once per script execution 
     309     *  
     310     * @return void 
     311     */ 
     312    static private function regenerate() 
     313    { 
     314        if (!self::$regenerated) { 
     315            session_regenerate_id(); 
     316            self::$regenerated = TRUE; 
     317        }    
     318    } 
     319     
     320     
     321    /** 
    301322     * Redirect the user to the login page if they do not have the permissions required 
    302323     *  
     
    364385        self::$login_page      = NULL; 
    365386        self::$named_ip_ranges = array(); 
     387        self::$regenerated     = FALSE; 
    366388    } 
    367389     
     
    424446    static public function setUserACLs($acls) 
    425447    { 
     448        self::regenerate(); 
    426449        fSession::set('user_acls', $acls, __CLASS__ . '::'); 
    427450    } 
     
    436459    static public function setUserAuthLevel($level) 
    437460    { 
     461        self::regenerage(); 
    438462        self::validateAuthLevel($level); 
    439463        fSession::set('user_auth_level', $level, __CLASS__ . '::'); 
     
    449473    static public function setUserToken($token) 
    450474    { 
     475        self::regenerate(); 
    451476        fSession::set('user_token', $token, __CLASS__ . '::'); 
    452477    }