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


PHP SimpleSAML_IdP::terminateAssociation方法代码示例

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


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

示例1: onResponse

    /**
     * Continue the logout operation.
     *
     * This function will never return.
     *
     * @param string $assocId The association that is terminated.
     * @param string|null $relayState The RelayState from the start of the logout.
     * @param \SimpleSAML_Error_Exception|null $error The error that occurred during session termination (if any).
     */
    public function onResponse($assocId, $relayState, \SimpleSAML_Error_Exception $error = null)
    {
        assert('is_string($assocId)');
        $spId = sha1($assocId);
        $this->idp->terminateAssociation($assocId);
        $header = <<<HEADER
<!DOCTYPE html>
<html>
 <head>
  <title>Logout response from %s</title>
  <script>
HEADER;
        printf($header, htmlspecialchars(var_export($assocId, true)));
        if ($error) {
            $errorMsg = $error->getMessage();
            echo 'window.parent.logoutFailed("' . $spId . '", "' . addslashes($errorMsg) . '");';
        } else {
            echo 'window.parent.logoutCompleted("' . $spId . '");';
        }
        echo <<<FOOTER
  </script>
 </head>
 <body>
 </body>
</html>
FOOTER;
        exit(0);
    }
开发者ID:simplesamlphp,项目名称:simplesamlphp,代码行数:37,代码来源:IFrameLogoutHandler.php

示例2: onResponse

 /**
  * Continue the logout operation.
  *
  * This function will never return.
  *
  * @param string $assocId The association that is terminated.
  * @param string|null $relayState The RelayState from the start of the logout.
  * @param \SimpleSAML_Error_Exception|null $error The error that occurred during session termination (if any).
  *
  * @throws \SimpleSAML_Error_Exception If the RelayState was lost during logout.
  */
 public function onResponse($assocId, $relayState, \SimpleSAML_Error_Exception $error = null)
 {
     assert('is_string($assocId)');
     assert('is_string($relayState) || is_null($relayState)');
     if ($relayState === null) {
         throw new \SimpleSAML_Error_Exception('RelayState lost during logout.');
     }
     $state = \SimpleSAML_Auth_State::loadState($relayState, 'core:LogoutTraditional');
     if ($error === null) {
         Logger::info('Logged out of ' . var_export($assocId, true) . '.');
         $this->idp->terminateAssociation($assocId);
     } else {
         Logger::warning('Error received from ' . var_export($assocId, true) . ' during logout:');
         $error->logWarning();
         $state['core:Failed'] = true;
     }
     self::logoutNextSP($state);
 }
开发者ID:simplesamlphp,项目名称:simplesamlphp,代码行数:29,代码来源:TraditionalLogoutHandler.php


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