umbalaconmeogia/yii2-ssosubdomain

库,用于帮助在子域上实现单点登录(SSO)。

安装: 640

依赖: 0

建议者: 0

安全性: 0

星标: 1

关注者: 1

分支: 1

开放问题: 0

类型:yii2-extension

v0.0.6 2019-05-23 03:12 UTC

This package is auto-updated.

Last update: 2024-09-23 15:19:25 UTC


README

库,用于帮助在子域上实现单点登录(SSO)。

要使用SSO登录,您需要一个身份提供者(IdentityProvider)的Web服务器以及几个(至少一个)服务提供者(ServiceProvider)的Web服务器。

用法

在每个服务器系统上安装库。

composer require umbalaconmeogia/yii2-ssosubdomain

更新身份提供者服务器中的登录和注销操作。

编辑SiteController类,移除 actionLogin()actionLogout() 函数,并更新 actions() 函数。

public function actions()
{
    return [
        'login' => [
            'class' => \umbalaconmeogia\ssosubdomain\actions\IdentityProviderLoginAction::class,
            'loginFormClass' => LoginForm::class,
        ],
        'logout' => [
            'class' => \umbalaconmeogia\ssosubdomain\actions\IdentityProviderLogoutAction::class,
            'ssoCookieDomain' => Yii::$app->session->cookieParams['domain'],
        ],

        // Another definition.
    ];
}

注意:在 behaviors() 函数中移除 logout 必须通过POST方法调用的要求。

更新服务提供者服务器中的登录和注销操作。

编辑SiteController类,移除 actionLogin()actionLogout() 函数,并更新 actions() 函数。

public function actions()
{
    return [
        'login' => [
            'class' => \umbalaconmeogia\ssosubdomain\actions\ServiceProviderLoginAction::class,
            'idProviderLoginUrl' => \Yii::$app->params['idProviderLoginUrl'],
        ],
        'logout' => [
            'class' => \umbalaconmeogia\ssosubdomain\actions\ServiceProviderLogoutAction::class,
            'idProviderLogoutUrl' => \Yii::$app->params['idProviderLogoutUrl'],
        ],

        // Another definition.
    ];
}

同时设置配置参数中的 idProviderLoginUrlidProviderLogoutUrl