dmsylvio / sso
将 Yii 2 应用程序连接到身份提供者以实现单点登录
dev-master
2019-02-11 12:54 UTC
Requires
- yiisoft/yii2: ~2.0.0
This package is auto-updated.
Last update: 2024-09-12 04:41:35 UTC
README
将 Yii 2 应用程序连接到身份提供者以实现单点登录
安装
安装此扩展的首选方式是通过 composer。
运行以下命令之一
composer require --prefer-dist dmsylvio/sso "dev-master"
或者在您的 composer.json 文件的 require 部分添加
"dmsylvio/sso": "dev-master"
数据库迁移
检查您的数据库设置,并在控制台运行迁移
php yii migrate --migrationPath=@vendor/dmsylvio/sso/migrations
更多信息请参阅 数据库迁移文档
配置
要访问模块,您需要将其添加到应用程序配置中
......
'modules' => [
'sso' => [
'class' => 'app\vendor\dmsylvio\sso\Access',
],
],
......
在 config/params.php 中配置系统 ID
return [
'adminEmail' => 'admin@example.com',
'systemId' => '2',
'systemName' => 'teste',
'systemDesc' => 'Sistema de teste',
];
将新菜单项添加到您的导航栏:[不是必需的] ~ 仅用于验证 sso 是否已安装
......
['label' => 'sso', 'url' => ['/sso']],
......
You may have to customize the user rights for the access log view. You could do it by editing ```behaviors/AccessRule.php```.
举例说明手动使用
这是从模块 dmsylvio/yii2-accounts 的登录方法中的一个示例。
use app\vendor\dmsylvio\sso\behaviors\AccessRule;
......
/**
* {@inheritdoc}
*/
public function behaviors(){
$controllername = Yii::$app->controller->id;
$behaviors = [
'access' => [
'class' => AccessControl::class,
'ruleConfig' => [
'class' => AccessRule::class,
],
'only' => AccessRule::getActions($controllername),
'rules' => AccessRule::getRoles($controllername),
],
'verbs' => [
'class' => VerbFilter::class,
'actions' => [
'delete' => ['post'],
],
],
];
return $behaviors;
}
......