コード例 #1
0
 protected function _configureProxyServer(EngineBlock_Corto_CoreProxy $proxyServer)
 {
     $proxyServer->setSystemLog($this->_getSystemLog());
     $proxyServer->setSessionLogDefault($this->_getSessionLog());
     $application = EngineBlock_ApplicationSingleton::getInstance();
     $proxyServer->setConfigs(array('debug' => $application->getConfigurationValue('debug', false), 'trace' => $application->getConfigurationValue('debug', false), 'ConsentStoreValues' => $this->_getConsentConfigurationValue('storeValues', true), 'NoSupportedIDPError' => 'user', 'rememberIdp' => '+3 months'));
     $attributes = array();
     require ENGINEBLOCK_FOLDER_APPLICATION . 'configs/attributes.inc.php';
     $proxyServer->setAttributeMetadata($attributes);
     $proxyServer->setHostedEntities(array($proxyServer->getHostedEntityUrl($this->_hostedEntity) => array('certificates' => array('public' => $application->getConfiguration()->encryption->key->public, 'private' => $application->getConfiguration()->encryption->key->private), 'infilter' => array(new EngineBlock_Corto_Filter_Input($this), 'filter'), 'outfilter' => array(new EngineBlock_Corto_Filter_Output($this), 'filter'), 'Processing' => array('Consent' => array('Binding' => 'INTERNAL', 'Location' => $proxyServer->getHostedEntityUrl($this->_hostedEntity, 'provideConsentService'))), 'keepsession' => true, 'idpMetadataValidUntilSeconds' => 86400, 'WantsAssertionsSigned' => true)));
     /**
      * Add ourselves as valid IdP
      */
     $engineBlockEntities = array($proxyServer->getHostedEntityUrl($this->_hostedEntity, 'idPMetadataService') => array('certificates' => array('public' => $application->getConfiguration()->encryption->key->public, 'private' => $application->getConfiguration()->encryption->key->private)));
     $remoteEntities = $this->_getRemoteEntities();
     $proxyServer->setRemoteEntities($remoteEntities + $engineBlockEntities);
     $proxyServer->setTemplateSource(Corto_ProxyServer::TEMPLATE_SOURCE_FILESYSTEM, array('FilePath' => ENGINEBLOCK_FOLDER_MODULES . 'Authentication/View/Proxy/'));
     $proxyServer->setBindingsModule(new EngineBlock_Corto_Module_Bindings($proxyServer));
     $proxyServer->setServicesModule(new EngineBlock_Corto_Module_Services($proxyServer));
     if ($this->_voContext != null) {
         $proxyServer->setVirtualOrganisationContext($this->_voContext);
     }
 }