<?php require_once '../_include.php'; /* Load simpleSAMLphp, configuration */ $config = SimpleSAML_Configuration::getInstance(); $session = SimpleSAML_Session::getInstance(); /* Check if valid local session exists.. */ SimpleSAML_Utilities::requireAdmin(); $attributes = array(); $attributes['HTTP_HOST'] = array($_SERVER['HTTP_HOST']); $attributes['HTTPS'] = array($_SERVER['HTTPS']); $attributes['SERVER_PROTOCOL'] = array($_SERVER['SERVER_PROTOCOL']); $attributes['SERVER_PORT'] = array($_SERVER['SERVER_PORT']); $attributes['Utilities_getBaseURL()'] = array(SimpleSAML_Utilities::getBaseURL()); $attributes['Utilities_getSelfHost()'] = array(SimpleSAML_Utilities::getSelfHost()); $attributes['Utilities_selfURLhost()'] = array(SimpleSAML_Utilities::selfURLhost()); $attributes['Utilities_selfURLNoQuery()'] = array(SimpleSAML_Utilities::selfURLNoQuery()); $attributes['Utilities_getSelfHostWithPath()'] = array(SimpleSAML_Utilities::getSelfHostWithPath()); $attributes['Utilities_getFirstPathElement()'] = array(SimpleSAML_Utilities::getFirstPathElement()); $attributes['Utilities_selfURL()'] = array(SimpleSAML_Utilities::selfURL()); $et = new SimpleSAML_XHTML_Template($config, 'status.php'); $et->data['header'] = '{status:header_diagnostics}'; $et->data['remaining'] = 'na'; $et->data['attributes'] = $attributes; $et->data['valid'] = 'na'; $et->data['logout'] = null; $et->show();
/** * This function locates the current entity id based on the hostname/path combination the user accessed. * It will throw an exception if it is unable to locate the entity id. * * @param $set The set we look for the entity id in. * @param $type Do you want to return the metaindex or the entityID. [entityid|metaindex] * @return The entity id which is associated with the current hostname/path combination. */ public function getMetaDataCurrentEntityID($set = 'saml20-sp-hosted', $type = 'entityid') { assert('is_string($set)'); /* First we look for the hostname/path combination. */ $currenthostwithpath = SimpleSAML_Utilities::getSelfHostWithPath(); // sp.example.org/university foreach ($this->sources as $source) { $index = $source->getEntityIdFromHostPath($currenthostwithpath, $set, $type); if ($index !== NULL) { return $index; } } /* Then we look for the hostname. */ $currenthost = SimpleSAML_Utilities::getSelfHost(); // sp.example.org if (strpos($currenthost, ":") !== FALSE) { $currenthostdecomposed = explode(":", $currenthost); $currenthost = $currenthostdecomposed[0]; } foreach ($this->sources as $source) { $index = $source->getEntityIdFromHostPath($currenthost, $set, $type); if ($index !== NULL) { return $index; } } /* Then we look for the DEFAULT entry. */ foreach ($this->sources as $source) { $entityId = $source->getEntityIdFromHostPath('__DEFAULT__', $set, $type); if ($entityId !== NULL) { return $entityId; } } /* We were unable to find the hostname/path in any metadata source. */ throw new Exception('Could not find any default metadata entities in set [' . $set . '] for host [' . $currenthost . ' : ' . $currenthostwithpath . ']'); }