From 540c72f7c3bda3dbd29210fc71779bb5f10457bf Mon Sep 17 00:00:00 2001 From: Tim van Dijen <tvdijen@gmail.com> Date: Thu, 31 May 2018 20:29:06 +0200 Subject: [PATCH] Replace SimpleSAML_Stats* with namespaced version --- lib/SimpleSAML/Stats.php | 7 +- lib/SimpleSAML/Stats/Output.php | 5 +- modules/consent/lib/Auth/Process/Consent.php | 78 ++++++++++---------- modules/consent/www/getconsent.php | 2 +- modules/consent/www/noconsent.php | 2 +- modules/core/lib/Stats/Output/File.php | 3 +- modules/core/lib/Stats/Output/Log.php | 8 +- modules/core/www/idp/logout-iframe-done.php | 14 ++-- modules/core/www/idp/logout-iframe-post.php | 2 +- modules/core/www/idp/logout-iframe.php | 2 +- modules/saml/lib/IdP/SAML1.php | 4 +- modules/saml/lib/IdP/SAML2.php | 14 ++-- 12 files changed, 74 insertions(+), 67 deletions(-) diff --git a/lib/SimpleSAML/Stats.php b/lib/SimpleSAML/Stats.php index 3cd010f2e..9329310b8 100644 --- a/lib/SimpleSAML/Stats.php +++ b/lib/SimpleSAML/Stats.php @@ -1,5 +1,6 @@ <?php +namespace SimpleSAML; /** * Statistics handler class. @@ -8,9 +9,9 @@ * * @package SimpleSAMLphp */ -class SimpleSAML_Stats -{ +class Stats +{ /** * Whether this class is initialized. * @@ -37,7 +38,7 @@ class SimpleSAML_Stats private static function createOutput(\SimpleSAML\Configuration $config) { $cls = $config->getString('class'); - $cls = SimpleSAML\Module::resolveClass($cls, 'Stats_Output', 'SimpleSAML_Stats_Output'); + $cls = SimpleSAML\Module::resolveClass($cls, 'Stats\Output', '\SimpleSAML\Stats\Output'); $output = new $cls($config); return $output; diff --git a/lib/SimpleSAML/Stats/Output.php b/lib/SimpleSAML/Stats/Output.php index fe803e9bf..a4a05ed44 100644 --- a/lib/SimpleSAML/Stats/Output.php +++ b/lib/SimpleSAML/Stats/Output.php @@ -1,14 +1,15 @@ <?php +namespace SimpleSAML\Stats; /** * Interface for statistics outputs. * * @package SimpleSAMLphp */ -abstract class SimpleSAML_Stats_Output -{ +abstract class Output +{ /** * Initialize the output. * diff --git a/modules/consent/lib/Auth/Process/Consent.php b/modules/consent/lib/Auth/Process/Consent.php index 9b0fdd110..342e110f2 100644 --- a/modules/consent/lib/Auth/Process/Consent.php +++ b/modules/consent/lib/Auth/Process/Consent.php @@ -1,6 +1,5 @@ <?php - /** * Consent Authentication Processing filter * @@ -9,6 +8,11 @@ * * @package SimpleSAMLphp */ + +use SimpleSAML\Logger; +use SimpleSAML\Stats; +use SimpleSAML\Error; + class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFilter { /** @@ -69,7 +73,7 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil * @param array $config Configuration information. * @param mixed $reserved For future use. * - * @throws \SimpleSAML\Error\Exception if the configuration is not valid. + * @throws Error\Exception if the configuration is not valid. */ public function __construct($config, $reserved) { @@ -78,7 +82,7 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil if (array_key_exists('includeValues', $config)) { if (!is_bool($config['includeValues'])) { - throw new \SimpleSAML\Error\Exception( + throw new Error\Exception( 'Consent: includeValues must be boolean. '. var_export($config['includeValues'], true).' given.' ); @@ -88,7 +92,7 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil if (array_key_exists('checked', $config)) { if (!is_bool($config['checked'])) { - throw new \SimpleSAML\Error\Exception( + throw new Error\Exception( 'Consent: checked must be boolean. '. var_export($config['checked'], true).' given.' ); @@ -98,7 +102,7 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil if (array_key_exists('focus', $config)) { if (!in_array($config['focus'], array('yes', 'no'), true)) { - throw new \SimpleSAML\Error\Exception( + throw new Error\Exception( 'Consent: focus must be a string with values `yes` or `no`. '. var_export($config['focus'], true).' given.' ); @@ -108,7 +112,7 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil if (array_key_exists('hiddenAttributes', $config)) { if (!is_array($config['hiddenAttributes'])) { - throw new \SimpleSAML\Error\Exception( + throw new Error\Exception( 'Consent: hiddenAttributes must be an array. '. var_export($config['hiddenAttributes'], true).' given.' ); @@ -118,16 +122,16 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil if (array_key_exists('attributes.exclude', $config)) { if (!is_array($config['attributes.exclude'])) { - throw new \SimpleSAML\Error\Exception( + throw new Error\Exception( 'Consent: attributes.exclude must be an array. '. var_export($config['attributes.exclude'], true).' given.' ); } $this->_noconsentattributes = $config['attributes.exclude']; } elseif (array_key_exists('noconsentattributes', $config)) { - SimpleSAML\Logger::warning("The 'noconsentattributes' option has been deprecated in favour of 'attributes.exclude'."); + Logger::warning("The 'noconsentattributes' option has been deprecated in favour of 'attributes.exclude'."); if (!is_array($config['noconsentattributes'])) { - throw new \SimpleSAML\Error\Exception( + throw new Error\Exception( 'Consent: noconsentattributes must be an array. '. var_export($config['noconsentattributes'], true).' given.' ); @@ -138,8 +142,8 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil if (array_key_exists('store', $config)) { try { $this->_store = sspmod_consent_Store::parseStoreConfig($config['store']); - } catch (Exception $e) { - SimpleSAML\Logger::error( + } catch (\Exception $e) { + Logger::error( 'Consent: Could not create consent storage: '. $e->getMessage() ); @@ -148,7 +152,7 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil if (array_key_exists('showNoConsentAboutService', $config)) { if (!is_bool($config['showNoConsentAboutService'])) { - throw new \SimpleSAML\Error\Exception('Consent: showNoConsentAboutService must be a boolean.'); + throw new Error\Exception('Consent: showNoConsentAboutService must be a boolean.'); } $this->_showNoConsentAboutService = $config['showNoConsentAboutService']; } @@ -222,7 +226,7 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil * * @return void * - * @throws \SimpleSAML\Error\NoPassive if the request was passive and consent is needed. + * @throws Error\NoPassive if the request was passive and consent is needed. */ public function process(&$state) { @@ -257,15 +261,15 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil if (isset($state['Source']['consent.disable']) && self::checkDisable($state['Source']['consent.disable'], $spEntityId) ) { - SimpleSAML\Logger::debug('Consent: Consent disabled for entity '.$spEntityId.' with IdP '.$idpEntityId); - SimpleSAML_Stats::log('consent:disabled', $statsData); + Logger::debug('Consent: Consent disabled for entity '.$spEntityId.' with IdP '.$idpEntityId); + Stats::log('consent:disabled', $statsData); return; } if (isset($state['Destination']['consent.disable']) && self::checkDisable($state['Destination']['consent.disable'], $idpEntityId) ) { - SimpleSAML\Logger::debug('Consent: Consent disabled for entity '.$spEntityId.' with IdP '.$idpEntityId); - SimpleSAML_Stats::log('consent:disabled', $statsData); + Logger::debug('Consent: Consent disabled for entity '.$spEntityId.' with IdP '.$idpEntityId); + Stats::log('consent:disabled', $statsData); return; } @@ -281,15 +285,15 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil } } - SimpleSAML\Logger::debug('Consent: userid: '.$state['UserID']); - SimpleSAML\Logger::debug('Consent: source: '.$source); - SimpleSAML\Logger::debug('Consent: destination: '.$destination); + Logger::debug('Consent: userid: '.$state['UserID']); + Logger::debug('Consent: source: '.$source); + Logger::debug('Consent: destination: '.$destination); $userId = self::getHashedUserID($state['UserID'], $source); $targetedId = self::getTargetedID($state['UserID'], $source, $destination); $attributeSet = self::getAttributeHash($attributes, $this->_includeValues); - SimpleSAML\Logger::debug( + Logger::debug( 'Consent: hasConsent() ['.$userId.'|'.$targetedId.'|'. $attributeSet.']' ); @@ -297,26 +301,26 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil try { if ($this->_store->hasConsent($userId, $targetedId, $attributeSet)) { // Consent already given - SimpleSAML\Logger::stats('consent found'); - SimpleSAML_Stats::log('consent:found', $statsData); + Logger::stats('consent found'); + Stats::log('consent:found', $statsData); return; } - SimpleSAML\Logger::stats('consent notfound'); - SimpleSAML_Stats::log('consent:notfound', $statsData); + Logger::stats('consent notfound'); + Stats::log('consent:notfound', $statsData); $state['consent:store'] = $this->_store; $state['consent:store.userId'] = $userId; $state['consent:store.destination'] = $targetedId; $state['consent:store.attributeSet'] = $attributeSet; } catch (Exception $e) { - SimpleSAML\Logger::error('Consent: Error reading from storage: '.$e->getMessage()); - SimpleSAML\Logger::stats('Ccnsent failed'); - SimpleSAML_Stats::log('consent:failed', $statsData); + Logger::error('Consent: Error reading from storage: '.$e->getMessage()); + Logger::stats('Ccnsent failed'); + Stats::log('consent:failed', $statsData); } } else { - SimpleSAML\Logger::stats('consent nostorage'); - SimpleSAML_Stats::log('consent:nostorage', $statsData); + Logger::stats('consent nostorage'); + Stats::log('consent:nostorage', $statsData); } $state['consent:focus'] = $this->_focus; @@ -327,17 +331,17 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil // user interaction necessary. Throw exception on isPassive request if (isset($state['isPassive']) && $state['isPassive'] === true) { - SimpleSAML_Stats::log('consent:nopassive', $statsData); - throw new SimpleSAML\Module\saml\Error\NoPassive( + Stats::log('consent:nopassive', $statsData); + throw new Module\saml\Error\NoPassive( \SAML2\Constants::STATUS_REQUESTER, 'Unable to give consent on passive request.' ); } // Save state and redirect - $id = \SimpleSAML\Auth\State::saveState($state, 'consent:request'); - $url = SimpleSAML\Module::getModuleURL('consent/getconsent.php'); - \SimpleSAML\Utils\HTTP::redirectTrustedURL($url, array('StateId' => $id)); + $id = Auth\State::saveState($state, 'consent:request'); + $url = Module::getModuleURL('consent/getconsent.php'); + Utils\HTTP::redirectTrustedURL($url, array('StateId' => $id)); } @@ -351,7 +355,7 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil */ public static function getHashedUserID($userid, $source) { - return hash('sha1', $userid.'|'.SimpleSAML\Utils\Config::getSecretSalt().'|'.$source); + return hash('sha1', $userid.'|'.Utils\Config::getSecretSalt().'|'.$source); } @@ -366,7 +370,7 @@ class sspmod_consent_Auth_Process_Consent extends \SimpleSAML\Auth\ProcessingFil */ public static function getTargetedID($userid, $source, $destination) { - return hash('sha1', $userid.'|'.SimpleSAML\Utils\Config::getSecretSalt().'|'.$source.'|'.$destination); + return hash('sha1', $userid.'|'.Utils\Config::getSecretSalt().'|'.$source.'|'.$destination); } diff --git a/modules/consent/www/getconsent.php b/modules/consent/www/getconsent.php index 9265b071b..37a76f346 100644 --- a/modules/consent/www/getconsent.php +++ b/modules/consent/www/getconsent.php @@ -55,7 +55,7 @@ if (array_key_exists('yes', $_REQUEST)) { if (isset($state['Destination']['entityid'])) { $statsInfo['spEntityID'] = $state['Destination']['entityid']; } - \SimpleSAML_Stats::log('consent:accept', $statsInfo); + \SimpleSAML\Stats::log('consent:accept', $statsInfo); if ( array_key_exists('consent:store', $state) && array_key_exists('saveconsent', $_REQUEST) diff --git a/modules/consent/www/noconsent.php b/modules/consent/www/noconsent.php index dcf09d60e..bccaead3b 100644 --- a/modules/consent/www/noconsent.php +++ b/modules/consent/www/noconsent.php @@ -37,7 +37,7 @@ $statsInfo = array(); if (isset($state['Destination']['entityid'])) { $statsInfo['spEntityID'] = $state['Destination']['entityid']; } -\SimpleSAML_Stats::log('consent:reject', $statsInfo); +\SimpleSAML\Stats::log('consent:reject', $statsInfo); $globalConfig = \SimpleSAML\Configuration::getInstance(); diff --git a/modules/core/lib/Stats/Output/File.php b/modules/core/lib/Stats/Output/File.php index f67fd5358..d2cd70520 100644 --- a/modules/core/lib/Stats/Output/File.php +++ b/modules/core/lib/Stats/Output/File.php @@ -5,8 +5,9 @@ * * @package SimpleSAMLphp */ -class sspmod_core_Stats_Output_File extends SimpleSAML_Stats_Output { +class sspmod_core_Stats_Output_File extends \SimpleSAML\Stats\Output +{ /** * The log directory. * @var string diff --git a/modules/core/lib/Stats/Output/Log.php b/modules/core/lib/Stats/Output/Log.php index ec26f7b4c..05575058a 100644 --- a/modules/core/lib/Stats/Output/Log.php +++ b/modules/core/lib/Stats/Output/Log.php @@ -5,8 +5,9 @@ * * @package SimpleSAMLphp */ -class sspmod_core_Stats_Output_Log extends SimpleSAML_Stats_Output { +class sspmod_core_Stats_Output_Log extends \SimpleSAML\Stats\Output +{ /** * The logging function we should call. * @var callback @@ -21,9 +22,9 @@ class sspmod_core_Stats_Output_Log extends SimpleSAML_Stats_Output { */ public function __construct(\SimpleSAML\Configuration $config) { $logLevel = $config->getString('level', 'notice'); - $this->logger = array('SimpleSAML\Logger', $logLevel); + $this->logger = array('\SimpleSAML\Logger', $logLevel); if (!is_callable($this->logger)) { - throw new Exception('Invalid log level: ' . var_export($logLevel, TRUE)); + throw new \Exception('Invalid log level: ' . var_export($logLevel, TRUE)); } } @@ -37,5 +38,4 @@ class sspmod_core_Stats_Output_Log extends SimpleSAML_Stats_Output { $str_data = json_encode($data); call_user_func($this->logger, 'EVENT ' . $str_data); } - } diff --git a/modules/core/www/idp/logout-iframe-done.php b/modules/core/www/idp/logout-iframe-done.php index d338b1811..a01665a64 100644 --- a/modules/core/www/idp/logout-iframe-done.php +++ b/modules/core/www/idp/logout-iframe-done.php @@ -9,13 +9,13 @@ $idp = \SimpleSAML\IdP::getByState($state); $associations = $idp->getAssociations(); if (!isset($_REQUEST['cancel'])) { - SimpleSAML\Logger::stats('slo-iframe done'); - SimpleSAML_Stats::log('core:idp:logout-iframe:page', array('type' => 'done')); + \SimpleSAML\Logger::stats('slo-iframe done'); + \SimpleSAML\Stats::log('core:idp:logout-iframe:page', array('type' => 'done')); $SPs = $state['core:Logout-IFrame:Associations']; } else { // user skipped global logout - SimpleSAML\Logger::stats('slo-iframe skip'); - SimpleSAML_Stats::log('core:idp:logout-iframe:page', array('type' => 'skip')); + \SimpleSAML\Logger::stats('slo-iframe skip'); + \SimpleSAML\Stats::log('core:idp:logout-iframe:page', array('type' => 'skip')); $SPs = array(); // no SPs should have been logged out $state['core:Failed'] = true; // mark as partial logout } @@ -42,14 +42,14 @@ foreach ($SPs as $assocId => $sp) { if ($sp['core:Logout-IFrame:State'] === 'completed') { $idp->terminateAssociation($assocId); } else { - SimpleSAML\Logger::warning('Unable to terminate association with '.var_export($assocId, true).'.'); + \SimpleSAML\Logger::warning('Unable to terminate association with '.var_export($assocId, true).'.'); if (isset($sp['saml:entityID'])) { $spId = $sp['saml:entityID']; } else { $spId = $assocId; } - SimpleSAML\Logger::stats('slo-iframe-fail '.$spId); - SimpleSAML_Stats::log('core:idp:logout-iframe:spfail', array('sp' => $spId)); + \SimpleSAML\Logger::stats('slo-iframe-fail '.$spId); + \SimpleSAML\Stats::log('core:idp:logout-iframe:spfail', array('sp' => $spId)); $state['core:Failed'] = true; } } diff --git a/modules/core/www/idp/logout-iframe-post.php b/modules/core/www/idp/logout-iframe-post.php index aeb6554c2..b1e937c00 100644 --- a/modules/core/www/idp/logout-iframe-post.php +++ b/modules/core/www/idp/logout-iframe-post.php @@ -44,7 +44,7 @@ if ($encryptNameId) { $lr->encryptNameId(sspmod_saml_Message::getEncryptionKey($spMetadata)); } -SimpleSAML_Stats::log('saml:idp:LogoutRequest:sent', array( +\SimpleSAML\Stats::log('saml:idp:LogoutRequest:sent', array( 'spEntityID' => $association['saml:entityID'], 'idpEntityID' => $idpMetadata->getString('entityid'), )); diff --git a/modules/core/www/idp/logout-iframe.php b/modules/core/www/idp/logout-iframe.php index 8cc07f13d..298ffb053 100644 --- a/modules/core/www/idp/logout-iframe.php +++ b/modules/core/www/idp/logout-iframe.php @@ -15,7 +15,7 @@ if (isset($_REQUEST['type'])) { if ($type !== 'embed') { \SimpleSAML\Logger::stats('slo-iframe '.$type); - \SimpleSAML_Stats::log('core:idp:logout-iframe:page', array('type' => $type)); + \SimpleSAML\Stats::log('core:idp:logout-iframe:page', array('type' => $type)); } $state = \SimpleSAML\Auth\State::loadState($_REQUEST['id'], 'core:Logout-IFrame'); diff --git a/modules/saml/lib/IdP/SAML1.php b/modules/saml/lib/IdP/SAML1.php index f7ee616a6..f306a951f 100644 --- a/modules/saml/lib/IdP/SAML1.php +++ b/modules/saml/lib/IdP/SAML1.php @@ -49,7 +49,7 @@ class sspmod_saml_IdP_SAML1 if (isset($state['saml:AuthnRequestReceivedAt'])) { $statsData['logintime'] = microtime(true) - $state['saml:AuthnRequestReceivedAt']; } - SimpleSAML_Stats::log('saml:idp:Response', $statsData); + \SimpleSAML\Stats::log('saml:idp:Response', $statsData); // Generate and send response. $ar = new \SimpleSAML\XML\Shib13\AuthnResponse(); @@ -115,7 +115,7 @@ class sspmod_saml_IdP_SAML1 var_export($spEntityId, true) . ': ' . var_export($shire, true)); } - SimpleSAML_Stats::log('saml:idp:AuthnRequest', array( + \SimpleSAML\Stats::log('saml:idp:AuthnRequest', array( 'spEntityID' => $spEntityId, 'protocol' => 'saml1', )); diff --git a/modules/saml/lib/IdP/SAML2.php b/modules/saml/lib/IdP/SAML2.php index 1ee1d6e67..b5df095ed 100644 --- a/modules/saml/lib/IdP/SAML2.php +++ b/modules/saml/lib/IdP/SAML2.php @@ -79,7 +79,7 @@ class sspmod_saml_IdP_SAML2 if (isset($state['saml:AuthnRequestReceivedAt'])) { $statsData['logintime'] = microtime(true) - $state['saml:AuthnRequestReceivedAt']; } - \SimpleSAML_Stats::log('saml:idp:Response', $statsData); + \SimpleSAML\Stats::log('saml:idp:Response', $statsData); // send the response $binding = \SAML2\Binding::getBinding($protocolBinding); @@ -142,7 +142,7 @@ class sspmod_saml_IdP_SAML2 if (isset($state['saml:AuthnRequestReceivedAt'])) { $statsData['logintime'] = microtime(true) - $state['saml:AuthnRequestReceivedAt']; } - \SimpleSAML_Stats::log('saml:idp:Response:error', $statsData); + \SimpleSAML\Stats::log('saml:idp:Response:error', $statsData); $binding = \SAML2\Binding::getBinding($protocolBinding); $binding->send($ar); @@ -371,7 +371,7 @@ class sspmod_saml_IdP_SAML2 ); } - SimpleSAML_Stats::log('saml:idp:AuthnRequest', array( + \SimpleSAML\Stats::log('saml:idp:AuthnRequest', array( 'spEntityID' => $spEntityId, 'idpEntityID' => $idpMetadata->getString('entityid'), 'forceAuthn' => $forceAuthn, @@ -469,7 +469,7 @@ class sspmod_saml_IdP_SAML2 $idpMetadata = $idp->getConfig(); $spMetadata = $metadata->getMetaDataConfig($association['saml:entityID'], 'saml20-sp-remote'); - SimpleSAML_Stats::log('saml:idp:LogoutRequest:sent', array( + \SimpleSAML\Stats::log('saml:idp:LogoutRequest:sent', array( 'spEntityID' => $association['saml:entityID'], 'idpEntityID' => $idpMetadata->getString('entityid'), )); @@ -523,7 +523,7 @@ class sspmod_saml_IdP_SAML2 Logger::debug('Sending logout response to SP '.var_export($spEntityId, true)); } - SimpleSAML_Stats::log('saml:idp:LogoutResponse:sent', array( + \SimpleSAML\Stats::log('saml:idp:LogoutResponse:sent', array( 'spEntityID' => $spEntityId, 'idpEntityID' => $idpMetadata->getString('entityid'), 'partial' => $partial @@ -579,7 +579,7 @@ class sspmod_saml_IdP_SAML2 if (!$message->isSuccess()) { $statsData['error'] = $message->getStatus(); } - SimpleSAML_Stats::log('saml:idp:LogoutResponse:recv', $statsData); + \SimpleSAML\Stats::log('saml:idp:LogoutResponse:recv', $statsData); $relayState = $message->getRelayState(); @@ -595,7 +595,7 @@ class sspmod_saml_IdP_SAML2 $idp->handleLogoutResponse($assocId, $relayState, $logoutError); } elseif ($message instanceof \SAML2\LogoutRequest) { Logger::info('Received SAML 2.0 LogoutRequest from: '.var_export($spEntityId, true)); - SimpleSAML_Stats::log('saml:idp:LogoutRequest:recv', array( + \SimpleSAML\Stats::log('saml:idp:LogoutRequest:recv', array( 'spEntityID' => $spEntityId, 'idpEntityID' => $idpMetadata->getString('entityid'), )); -- GitLab