当前位置: 首页>>代码示例>>PHP>>正文


PHP SimpleSAML_Utilities::addURLparameter方法代码示例

本文整理汇总了PHP中SimpleSAML_Utilities::addURLparameter方法的典型用法代码示例。如果您正苦于以下问题:PHP SimpleSAML_Utilities::addURLparameter方法的具体用法?PHP SimpleSAML_Utilities::addURLparameter怎么用?PHP SimpleSAML_Utilities::addURLparameter使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SimpleSAML_Utilities的用法示例。


在下文中一共展示了SimpleSAML_Utilities::addURLparameter方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: authorize

 /**
  * Attach the data to the token, and establish the Callback URL (and verifier for 1.0a protocol handling)
  * @param $requestTokenKey RequestToken that was authorized
  * @param $data Data that is authorized and to be attached to the requestToken
  * @return array(string:url, string:verifier) ; empty verifier for 1.0-response
  */
 public function authorize($requestTokenKey, $data)
 {
     $url = null;
     $verifier = '';
     $version = $this->defaultversion;
     // See whether to remember values from the original requestToken request:
     $request_attributes = $this->store->get('requesttorequest', $requestTokenKey, '');
     // must be there ..
     if ($request_attributes['value']) {
         // establish version to work with
         $v = $request_attributes['value']['version'];
         if ($v) {
             $version = $v;
         }
         // establish callback to use
         if ($request_attributes['value']['callback']) {
             $url = $request_attributes['value']['callback'];
         }
     }
     // Is there a callback registered? This is leading, even over a supplied oauth_callback-parameter
     $oConsumer = $this->lookup_consumer($request_attributes['value']['consumerKey']);
     if ($oConsumer && $oConsumer->callback_url) {
         $url = $oConsumer->callback_url;
     }
     if ($version == '1.0a') {
         $verifier = SimpleSAML_Utilities::generateID();
         $url = SimpleSAML_Utilities::addURLparameter($url, array("oauth_verifier" => $verifier));
     }
     $this->store->set('authorized', $requestTokenKey, $verifier, $data, $this->config->getValue('requestTokenDuration', 60 * 30));
     return array($url, $verifier);
 }
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:37,代码来源:OAuthStore.php

示例2: getRedirectURL

 /**
  * Create the redirect URL for a message.
  *
  * @param  SAML2_Message $message The message.
  * @return string        The URL the user should be redirected to in order to send a message.
  * @throws Exception
  */
 public function getRedirectURL(SAML2_Message $message)
 {
     $store = SimpleSAML_Store::getInstance();
     if ($store === FALSE) {
         throw new Exception('Unable to send artifact without a datastore configured.');
     }
     $generatedId = pack('H*', (string) SimpleSAML_Utilities::stringToHex(SimpleSAML_Utilities::generateRandomBytes(20)));
     $artifact = base64_encode("" . sha1($message->getIssuer(), TRUE) . $generatedId);
     $artifactData = $message->toUnsignedXML();
     $artifactDataString = $artifactData->ownerDocument->saveXML($artifactData);
     $store->set('artifact', $artifact, $artifactDataString, time() + 15 * 60);
     $params = array('SAMLart' => $artifact);
     $relayState = $message->getRelayState();
     if ($relayState !== NULL) {
         $params['RelayState'] = $relayState;
     }
     return SimpleSAML_Utilities::addURLparameter($message->getDestination(), $params);
 }
开发者ID:danielkjfrog,项目名称:docker,代码行数:25,代码来源:HTTPArtifact.php

示例3: authenticate

 /**
  * Log-in using Twitter platform
  *
  * @param array &$state  Information about the current authentication.
  */
 public function authenticate(&$state)
 {
     assert('is_array($state)');
     /* We are going to need the authId in order to retrieve this authentication source later. */
     $state[self::AUTHID] = $this->authId;
     $stateID = SimpleSAML_Auth_State::saveState($state, self::STAGE_INIT);
     $consumer = new sspmod_oauth_Consumer($this->key, $this->secret);
     // Get the request token
     $linkback = SimpleSAML_Module::getModuleURL('authtwitter/linkback.php', array('AuthState' => $stateID));
     $requestToken = $consumer->getRequestToken('https://api.twitter.com/oauth/request_token', array('oauth_callback' => $linkback));
     SimpleSAML_Logger::debug("Got a request token from the OAuth service provider [" . $requestToken->key . "] with the secret [" . $requestToken->secret . "]");
     $state['authtwitter:authdata:requestToken'] = $requestToken;
     SimpleSAML_Auth_State::saveState($state, self::STAGE_INIT);
     // Authorize the request token
     $url = 'https://api.twitter.com/oauth/authenticate';
     if ($this->force_login) {
         $url = SimpleSAML_Utilities::addURLparameter($url, array('force_login' => 'true'));
     }
     $consumer->getAuthorizeRequest($url, $requestToken);
 }
开发者ID:shirlei,项目名称:simplesaml,代码行数:25,代码来源:Twitter.php

示例4: array

$links_welcome = array();
$links_config = array();
$links_auth = array();
$links_federation = array();
if ($config->getBoolean('idpdisco.enableremember', FALSE)) {
    $links_federation[] = array('href' => 'cleardiscochoices.php', 'text' => '{core:frontpage:link_cleardiscochoices}');
}
$publishURL = $config->getString('metashare.publishurl', NULL);
if ($publishURL !== NULL) {
    $metadataSources = array('saml20-idp' => 'saml2/idp/metadata.php', 'saml20-sp' => 'saml2/sp/metadata.php', 'shib13-idp' => 'shib13/idp/metadata.php', 'shib13-sp' => 'shib13/sp/metadata.php');
    foreach ($metadataSources as $name => $url) {
        if (!$config->getBoolean('enable.' . $name, FALSE)) {
            continue;
        }
        $url = SimpleSAML_Utilities::getBaseURL() . $url;
        $linkTarget = SimpleSAML_Utilities::addURLparameter($publishURL, array('url' => $url));
        $links_federation[] = array('href' => $linkTarget, 'text' => '{core:frontpage:link_publish_' . $name . '}');
    }
}
$links_federation[] = array('href' => SimpleSAML_Utilities::getBaseURL() . 'admin/metadata.php', 'text' => '{core:frontpage:link_meta_overview}');
$links_federation[] = array('href' => SimpleSAML_Utilities::getBaseURL() . 'admin/metadata-converter.php', 'text' => '{core:frontpage:link_xmlconvert}');
$allLinks = array('links' => &$links, 'welcome' => &$links_welcome, 'config' => &$links_config, 'auth' => &$links_auth, 'federation' => &$links_federation);
SimpleSAML_Module::callHooks('frontpage', $allLinks);
$metadataHosted = array();
SimpleSAML_Module::callHooks('metadata_hosted', $metadataHosted);
$metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
$metaentries = array('hosted' => $metadataHosted, 'remote' => array());
if ($isadmin) {
    $metaentries['remote']['saml20-idp-remote'] = $metadata->getList('saml20-idp-remote');
    $metaentries['remote']['shib13-idp-remote'] = $metadata->getList('shib13-idp-remote');
}
开发者ID:hukumonline,项目名称:yii,代码行数:31,代码来源:frontpage_federation.php

示例5: getStateURL

 /**
  * Save the state, and return an URL that can contain a reference to the state.
  *
  * @param string $page  The name of the page.
  * @param array $state  The state array.
  * @return string  An URL with the state ID as a parameter.
  */
 private function getStateURL($page, array $state)
 {
     assert('is_string($page)');
     $stateId = SimpleSAML_Auth_State::saveState($state, 'openidProvider:resumeState');
     $stateURL = SimpleSAML_Module::getModuleURL('openidProvider/' . $page);
     $stateURL = SimpleSAML_Utilities::addURLparameter($stateURL, array('StateID' => $stateId));
     return $stateURL;
 }
开发者ID:hukumonline,项目名称:yii,代码行数:15,代码来源:Server.php

示例6: urlencode

}
if ($needAuth && !$isPassive) {
    SimpleSAML_Logger::info('SAML2.0 - IdP.SSOService: Will go to authentication module ' . $idpmetadata['auth']);
    $authId = SimpleSAML_Utilities::generateID();
    $session->setAuthnRequest('saml2', $authId, $requestcache);
    $redirectTo = SimpleSAML_Utilities::selfURLNoQuery() . '?RequestID=' . urlencode($authId);
    if ($authSource) {
        /* Authenticate with an AuthSource. */
        /* The user will be redirected to this URL if the session is lost. This will cause an
         * unsoliced authentication response to be sent to the SP.
         */
        $sessionLostParams = array('spentityid' => $requestcache['Issuer']);
        if (isset($requestcache['RelayState'])) {
            $sessionLostParams['RelayState'] = $requestcache['RelayState'];
        }
        $sessionLostURL = SimpleSAML_Utilities::addURLparameter($metadata->getGenerated('SingleSignOnService', 'saml20-idp-hosted'), $sessionLostParams);
        $hints = array('SPMetadata' => $metadata->getMetaData($requestcache['Issuer'], 'saml20-sp-remote'), 'IdPMetadata' => $idpmetadata, SimpleSAML_Auth_State::RESTART => $sessionLostURL);
        SimpleSAML_Auth_Default::initLogin($idpmetadata['auth'], $redirectTo, $redirectTo, $hints);
    } else {
        $authurl = '/' . $config->getBaseURL() . $idpmetadata['auth'];
        SimpleSAML_Utilities::redirect($authurl, array('RelayState' => $redirectTo, 'AuthId' => $authId, 'protocol' => 'saml2'));
    }
} elseif ($needAuth) {
    /* We have a passive request, but need authentication. Send back a response indicating that
     * the user didn't have a valid session.
     */
    handleError(new SimpleSAML_Error_NoPassive('Passive authentication requested, but no session available.'));
    /**
     * We got an request, and we have a valid session. Then we send an AuthnResponse back to the
     * service.
     */
开发者ID:hukumonline,项目名称:yii,代码行数:31,代码来源:SSOService.php

示例7: pack

            $site = $op[1];
            $site = pack("H*", $site);
            $server->removeTrustRoot($identity, $site);
        }
    }
    SimpleSAML_Utilities::redirect($identity);
}
if ($ownPage) {
    $trustedSites = $server->getTrustRoots($identity);
} else {
    $trustedSites = array();
}
$userBase = SimpleSAML_Module::getModuleURL('openidProvider/user.php');
$xrds = SimpleSAML_Module::getModuleURL('openidProvider/xrds.php');
if ($userId !== FALSE) {
    $xrds = SimpleSAML_Utilities::addURLparameter($xrds, array('user' => $userId));
}
$as = $server->getAuthSource();
$t = new SimpleSAML_XHTML_Template($globalConfig, 'openidProvider:user.tpl.php');
$t->data['identity'] = $identity;
$t->data['loggedInAs'] = $server->getUserId();
$t->data['loginURL'] = $as->getLoginURL($userBase);
$t->data['logoutURL'] = $as->getLogoutURL();
$t->data['ownPage'] = $ownPage;
$t->data['serverURL'] = $server->getServerURL();
$t->data['trustedSites'] = $trustedSites;
$t->data['userId'] = $userId;
$t->data['userIdURL'] = $userBase . '/' . $userId;
$t->data['xrdsURL'] = $xrds;
$t->show();
exit(0);
开发者ID:emma5021,项目名称:toba,代码行数:31,代码来源:user.php

示例8: sspmod_selfregister_Error_UserException

             throw new sspmod_selfregister_Error_UserException('void_value', 'mail', '', 'Validation of user input failed.' . ' Field:' . 'mail' . ' is empty');
         } else {
             throw new sspmod_selfregister_Error_UserException('illegale_value', 'mail', $rawValue, 'Validation of user input failed.' . ' Field:' . 'mail' . ' Value:' . $rawValue);
         }
     }
     $store = sspmod_selfregister_Storage_UserCatalogue::instantiateStorage();
     if ($store->isRegistered('mail', $email)) {
         $html = new SimpleSAML_XHTML_Template($config, 'selfregister:step5_mailUsed.tpl.php', 'selfregister:selfregister');
         $html->data['systemName'] = $systemName;
         $html->show();
     } else {
         $tg = new SimpleSAML_Auth_TimeLimitedToken($tokenLifetime);
         $tg->addVerificationData($email);
         $newToken = $tg->generate_token();
         $url = SimpleSAML_Utilities::selfURL();
         $registerurl = SimpleSAML_Utilities::addURLparameter($url, array('email' => $email, 'token' => $newToken));
         $mailt = new SimpleSAML_XHTML_Template($config, 'selfregister:mail1_token.tpl.php', 'selfregister:selfregister');
         $mailt->data['email'] = $email;
         $mailt->data['registerurl'] = $registerurl;
         $mailt->data['systemName'] = $systemName;
         $mailer = new sspmod_selfregister_XHTML_Mailer($email, $uregconf->getString('mail.subject'), $uregconf->getString('mail.from'), NULL, $uregconf->getString('mail.replyto'));
         $mailer->setTemplate($mailt);
         $mailer->send();
         $html = new SimpleSAML_XHTML_Template($config, 'selfregister:step2_sent.tpl.php', 'selfregister:selfregister');
         $html->data['systemName'] = $systemName;
         $html->show();
     }
 } catch (sspmod_selfregister_Error_UserException $e) {
     $et = new SimpleSAML_XHTML_Template($config, 'selfregister:step1_email.tpl.php', 'selfregister:selfregister');
     $et->data['email'] = $_POST['emailreg'];
     $et->data['systemName'] = $systemName;
开发者ID:googlecode-mirror,项目名称:simplesamlphp-labs,代码行数:31,代码来源:newUser.php

示例9: receiveAuthnRequest


//.........这里部分代码省略.........
         $spMetadata = $metadata->getMetaDataConfig($spEntityId, 'saml20-sp-remote');
         if (isset($_REQUEST['RelayState'])) {
             $relayState = (string) $_REQUEST['RelayState'];
         } else {
             $relayState = NULL;
         }
         if (isset($_REQUEST['binding'])) {
             $protocolBinding = (string) $_REQUEST['binding'];
         } else {
             $protocolBinding = NULL;
         }
         if (isset($_REQUEST['NameIDFormat'])) {
             $nameIDFormat = (string) $_REQUEST['NameIDFormat'];
         } else {
             $nameIDFormat = NULL;
         }
         $requestId = NULL;
         $IDPList = array();
         $ProxyCount = NULL;
         $RequesterID = NULL;
         $forceAuthn = FALSE;
         $isPassive = FALSE;
         $consumerURL = NULL;
         SimpleSAML_Logger::info('SAML2.0 - IdP.SSOService: IdP initiated authentication: ' . var_export($spEntityId, TRUE));
     } else {
         $binding = SAML2_Binding::getCurrentBinding();
         $request = $binding->receive();
         if (!$request instanceof SAML2_AuthnRequest) {
             throw new SimpleSAML_Error_BadRequest('Message received on authentication request endpoint wasn\'t an authentication request.');
         }
         $spEntityId = $request->getIssuer();
         if ($spEntityId === NULL) {
             throw new SimpleSAML_Error_BadRequest('Received message on authentication request endpoint without issuer.');
         }
         $spMetadata = $metadata->getMetaDataConfig($spEntityId, 'saml20-sp-remote');
         sspmod_saml_Message::validateMessage($spMetadata, $idpMetadata, $request);
         $relayState = $request->getRelayState();
         $requestId = $request->getId();
         $IDPList = $request->getIDPList();
         $ProxyCount = $request->getProxyCount();
         if ($ProxyCount !== null) {
             $ProxyCount--;
         }
         $RequesterID = $request->getRequesterID();
         $forceAuthn = $request->getForceAuthn();
         $isPassive = $request->getIsPassive();
         $consumerURL = $request->getAssertionConsumerServiceURL();
         $protocolBinding = $request->getProtocolBinding();
         $nameIdPolicy = $request->getNameIdPolicy();
         if (isset($nameIdPolicy['Format'])) {
             $nameIDFormat = $nameIdPolicy['Format'];
         } else {
             $nameIDFormat = NULL;
         }
         SimpleSAML_Logger::info('SAML2.0 - IdP.SSOService: Incomming Authentication request: ' . var_export($spEntityId, TRUE));
     }
     if ($protocolBinding === NULL || !in_array($protocolBinding, $supportedBindings, TRUE)) {
         /*
          * No binding specified or unsupported binding requested - default to HTTP-POST.
          * TODO: Select any supported binding based on default endpoint?
          */
         $protocolBinding = SAML2_Const::BINDING_HTTP_POST;
     }
     if ($consumerURL !== NULL) {
         $found = FALSE;
         foreach ($spMetadata->getEndpoints('AssertionConsumerService') as $ep) {
             if ($ep['Binding'] !== $protocolBinding) {
                 continue;
             }
             if ($ep['Location'] !== $consumerURL) {
                 continue;
             }
             $found = TRUE;
             break;
         }
         if (!$found) {
             SimpleSAML_Logger::warning('Authentication request from ' . var_export($spEntityId, TRUE) . ' contains invalid AssertionConsumerService URL. Was ' . var_export($consumerURL, TRUE) . '.');
             $consumerURL = NULL;
         }
     }
     if ($consumerURL === NULL) {
         /* Not specified or invalid. Use default. */
         $consumerURL = $spMetadata->getDefaultEndpoint('AssertionConsumerService', array($protocolBinding));
         $consumerURL = $consumerURL['Location'];
     }
     $IDPList = array_unique(array_merge($IDPList, $spMetadata->getArrayizeString('IDPList', array())));
     if ($ProxyCount == null) {
         $ProxyCount = $spMetadata->getInteger('ProxyCount', null);
     }
     if (!$forceAuthn) {
         $forceAuthn = $spMetadata->getBoolean('ForceAuthn', FALSE);
     }
     $sessionLostParams = array('spentityid' => $spEntityId, 'cookieTime' => time());
     if ($relayState !== NULL) {
         $sessionLostParams['RelayState'] = $relayState;
     }
     $sessionLostURL = SimpleSAML_Utilities::addURLparameter(SimpleSAML_Utilities::selfURLNoQuery(), $sessionLostParams);
     $state = array('Responder' => array('sspmod_saml_IdP_SAML2', 'sendResponse'), SimpleSAML_Auth_State::EXCEPTION_HANDLER_FUNC => array('sspmod_saml_IdP_SAML2', 'handleAuthError'), SimpleSAML_Auth_State::RESTART => $sessionLostURL, 'SPMetadata' => $spMetadata->toArray(), 'saml:RelayState' => $relayState, 'saml:RequestId' => $requestId, 'saml:IDPList' => $IDPList, 'saml:ProxyCount' => $ProxyCount, 'saml:RequesterID' => $RequesterID, 'ForceAuthn' => $forceAuthn, 'isPassive' => $isPassive, 'saml:ConsumerURL' => $consumerURL, 'saml:Binding' => $protocolBinding, 'saml:NameIDFormat' => $nameIDFormat);
     $idp->handleAuthenticationRequest($state);
 }
开发者ID:filonuse,项目名称:fedlab,代码行数:101,代码来源:SAML2.php

示例10: Exception

<?php

if (empty($_REQUEST['entityID'])) {
    throw new Exception('Missing parameter [entityID]');
}
if (empty($_REQUEST['return'])) {
    throw new Exception('Missing parameter [return]');
}
$djconfig = SimpleSAML_Configuration::getOptionalConfig('discojuice.php');
$config = SimpleSAML_Configuration::getInstance();
// EntityID
$entityid = $_REQUEST['entityID'];
// Return to...
$returnidparam = !empty($_REQUEST['returnIDParam']) ? $_REQUEST['returnIDParam'] : 'entityID';
$href = SimpleSAML_Utilities::addURLparameter($_REQUEST['return'], array($returnidparam => ''));
$hostedConfig = array($djconfig->getString('name', 'Service'), $entityid, SimpleSAML_Module::getModuleURL('discojuice/response.html'), $djconfig->getArray('feeds', array('edugain')), $href);
/*
	"a.signin", "Teest Demooo",
    "https://example.org/saml2/entityid",
    "' . SimpleSAML_Module::getModuleURL('discojuice/discojuice/discojuiceDiscoveryResponse.html') . '", ["kalmar"], "http://example.org/login?idp="
*/
$t = new SimpleSAML_XHTML_Template($config, 'discojuice:central.tpl.php');
$t->data['hostedConfig'] = $hostedConfig;
$t->data['enableCentralStorage'] = $djconfig->getBoolean('enableCentralStorage', true);
$t->data['additionalFeeds'] = $djconfig->getArray('additionalFeeds', null);
$t->show();
开发者ID:jerrcs,项目名称:simplesamlphp,代码行数:26,代码来源:central.php

示例11: Exception

 *  renew
 *  gateway
 *  
 */
if (!array_key_exists('service', $_GET)) {
    throw new Exception('Required URL query parameter [service] not provided. (CAS Server)');
}
$service = $_GET['service'];
$forceAuthn = isset($_GET['renew']) && $_GET['renew'];
$isPassive = isset($_GET['gateway']) && $_GET['gateway'];
$config = SimpleSAML_Configuration::getInstance();
$casconfig = SimpleSAML_Configuration::getConfig('module_casserver.php');
$legal_service_urls = $casconfig->getValue('legal_service_urls');
if (!checkServiceURL($service, $legal_service_urls)) {
    throw new Exception('Service parameter provided to CAS server is not listed as a legal service: [service] = ' . $service);
}
$auth = $casconfig->getValue('auth', 'saml2');
if (!in_array($auth, array('saml2', 'shib13'))) {
    throw new Exception('CAS Service configured to use [auth] = ' . $auth . ' only [saml2,shib13] is legal.');
}
$as = new SimpleSAML_Auth_Simple($auth);
if (!$as->isAuthenticated()) {
    $params = array('ForceAuthn' => $forceAuthn, 'isPassive' => $isPassive);
    $as->login($params);
}
$attributes = $as->getAttributes();
$path = $casconfig->resolvePath($casconfig->getValue('ticketcache', '/tmp'));
$ticket = str_replace('_', 'ST-', SimpleSAML_Utilities::generateID());
storeTicket($ticket, $path, array('service' => $service, 'forceAuthn' => $forceAuthn, 'attributes' => $attributes, 'proxies' => array(), 'validbefore' => time() + 5));
SimpleSAML_Utilities::redirectTrustedURL(SimpleSAML_Utilities::addURLparameter($service, array('ticket' => $ticket)));
开发者ID:danielkjfrog,项目名称:docker,代码行数:30,代码来源:login.php

示例12: receiveAuthnRequest

 /**
  * Receive an authentication request.
  *
  * @param SimpleSAML_IdP $idp  The IdP we are receiving it for.
  */
 public static function receiveAuthnRequest(SimpleSAML_IdP $idp)
 {
     if (isset($_REQUEST['cookieTime'])) {
         $cookieTime = (int) $_REQUEST['cookieTime'];
         if ($cookieTime + 5 > time()) {
             /*
              * Less than five seconds has passed since we were
              * here the last time. Cookies are probably disabled.
              */
             SimpleSAML_Utilities::checkCookie(SimpleSAML_Utilities::selfURL());
         }
     }
     if (!isset($_REQUEST['providerId'])) {
         throw new SimpleSAML_Error_BadRequest('Missing providerId parameter.');
     }
     $spEntityId = (string) $_REQUEST['providerId'];
     if (!isset($_REQUEST['shire'])) {
         throw new SimpleSAML_Error_BadRequest('Missing shire parameter.');
     }
     $shire = (string) $_REQUEST['shire'];
     if (isset($_REQUEST['target'])) {
         $target = $_REQUEST['target'];
     } else {
         $target = NULL;
     }
     SimpleSAML_Logger::info('Shib1.3 - IdP.SSOService: Got incoming Shib authnRequest from ' . var_export($spEntityId, TRUE) . '.');
     $metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
     $spMetadata = $metadata->getMetaDataConfig($spEntityId, 'shib13-sp-remote');
     $found = FALSE;
     foreach ($spMetadata->getEndpoints('AssertionConsumerService') as $ep) {
         if ($ep['Binding'] !== 'urn:oasis:names:tc:SAML:1.0:profiles:browser-post') {
             continue;
         }
         if ($ep['Location'] !== $shire) {
             continue;
         }
         $found = TRUE;
         break;
     }
     if (!$found) {
         throw new Exception('Invalid AssertionConsumerService for SP ' . var_export($spEntityId, TRUE) . ': ' . var_export($shire, TRUE));
     }
     SimpleSAML_Stats::log('saml:idp:AuthnRequest', array('spEntityID' => $spEntityId, 'protocol' => 'saml1'));
     $sessionLostURL = SimpleSAML_Utilities::addURLparameter(SimpleSAML_Utilities::selfURL(), array('cookieTime' => time()));
     $state = array('Responder' => array('sspmod_saml_IdP_SAML1', 'sendResponse'), 'SPMetadata' => $spMetadata->toArray(), 'saml:shire' => $shire, 'saml:target' => $target, 'saml:AuthnRequestReceivedAt' => microtime(TRUE));
     $idp->handleAuthenticationRequest($state);
 }
开发者ID:shirlei,项目名称:simplesaml,代码行数:52,代码来源:SAML1.php

示例13: startDisco

 /**
  * Start an IdP discovery service operation.
  *
  * @param array $state  The state array.
  */
 private function startDisco(array $state)
 {
     $id = SimpleSAML_Auth_State::saveState($state, 'saml:sp:sso');
     $config = SimpleSAML_Configuration::getInstance();
     $discoURL = $this->discoURL;
     if ($discoURL === NULL) {
         /* Fallback to internal discovery service. */
         $discoURL = SimpleSAML_Module::getModuleURL('saml/disco.php');
     }
     $returnTo = SimpleSAML_Module::getModuleURL('saml/sp/discoresp.php');
     $returnTo = SimpleSAML_Utilities::addURLparameter($returnTo, array('AuthID' => $id));
     SimpleSAML_Utilities::redirect($discoURL, array('entityID' => $this->entityId, 'return' => $returnTo, 'returnIDParam' => 'idpentityid'));
 }
开发者ID:hukumonline,项目名称:yii,代码行数:18,代码来源:SP.php

示例14: SimpleSAML_XHTML_Template

 $server->add_signature_method($hmac_method);
 $server->add_signature_method($plaintext_method);
 $server->add_signature_method($rsa_method);
 $config = SimpleSAML_Configuration::getInstance();
 $session = SimpleSAML_Session::getSessionFromRequest();
 $as = $oauthconfig->getString('auth');
 if (!$session->isValid($as)) {
     SimpleSAML_Auth_Default::initLogin($as, SimpleSAML_Utilities::selfURL());
 }
 if (!empty($_REQUEST['consent'])) {
     $consumer = $store->lookup_consumer_by_requestToken($requestToken);
     $t = new SimpleSAML_XHTML_Template($config, 'oauth:consent.php');
     $t->data['header'] = '{status:header_saml20_sp}';
     $t->data['consumer'] = $consumer;
     // array containint {name, description, key, secret, owner} keys
     $t->data['urlAgree'] = SimpleSAML_Utilities::addURLparameter(SimpleSAML_Utilities::selfURL(), array("consent" => "yes"));
     $t->data['logouturl'] = SimpleSAML_Utilities::selfURLNoQuery() . '?logout';
     $t->show();
     exit;
     // and be done.
 }
 $attributes = $session->getAttributes();
 // Assume user consent at this point and proceed with authorizing the token
 list($url, $verifier) = $store->authorize($requestToken, $attributes);
 if ($url) {
     // If authorize() returns a URL, take user there (oauth1.0a)
     SimpleSAML_Utilities::redirectTrustedURL($url);
 } else {
     if (isset($_REQUEST['oauth_callback'])) {
         // If callback was provided in the request (oauth1.0)
         SimpleSAML_Utilities::redirectUntrustedURL($_REQUEST['oauth_callback']);
开发者ID:shirlei,项目名称:simplesaml,代码行数:31,代码来源:authorize.php

示例15: array

					'hu' => 'Magyar', // Hungarian
					'pl' => 'Język polski', // Polish
					'pt' => 'Português', // Portuguese
					'pt-BR' => 'Português brasileiro', // Portuguese
					'tr' => 'Türkçe',
					'el' => 'ελληνικά',
					'ja' => '日本語',
					'zh-tw' => '中文',
		);
		
		$textarray = array();
		foreach ($languages AS $lang => $current) {
			if ($current) {
				$textarray[] = $langnames[$lang];
			} else {
				$textarray[] = '<a href="' . htmlspecialchars(SimpleSAML_Utilities::addURLparameter(SimpleSAML_Utilities::selfURL(), array('language' => $lang))) . '">' .
					$langnames[$lang] . '</a>';
			}
		}
		echo join(' | ', $textarray);
		echo '</div>';

	}



	?>
	<div id="content">


开发者ID:rhertzog,项目名称:lcs,代码行数:28,代码来源:header.php


注:本文中的SimpleSAML_Utilities::addURLparameter方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。