taufik-t/sso-client
最新稳定版本:3.4.7
Composer 安装命令:
composer require taufik-t/sso-client
包简介
A Single Sign-On (SSO) client package utilizing OAuth2
README 文档
README
Integrate Laravel Framework with Single Sign-On (SSO) Client using OAuth2.
Install
composer require taufik-t/sso-client
.env
SSO_CLIENT_ID="9a490422-0cdb-48bb-8ea4-c816786089f4"
SSO_CLIENT_SECRET="VNj0KAWJp2IfSlk2c7L67jdrPPhc0apMZVgDiSxs"
SSO_CLIENT_CALLBACK="https://app.client.com/oauth2/callback"
SSO_HOST="https://sso.server.com"
SSO_HOST_LOGOUT="https://sso.server.com/logout"
Publish config
php artisan vendor:publish --provider="TaufikT\SsoClient\SSOServiceProvider" --force
config/app.php
'providers' => ServiceProvider::defaultProviders()->merge([
/*
* Package Service Providers...
*/
// ...
TaufikT\SsoClient\SSOServiceProvider::class,
])->toArray(),
app/Http/Kernel.php
protected $middlewareAliases = [
// ...
'sso.auth' => \TaufikT\SsoClient\Http\Middleware\Authenticate::class,
'sso.guest' => \TaufikT\SsoClient\Http\Middleware\RedirectIfAuthenticated::class,
'sso.role' => \TaufikT\SsoClient\Http\Middleware\RoleMiddleware::class,
];
Middleware via Routes
Route::group(['middleware' => ['sso.auth']], function () {
// authenticated users only
});
Route::group(['middleware' => ['sso.guest']], function () {
// unauthenticated users only
});
Route::group(['middleware' => ['sso.auth', 'sso.role:user']], function () {
// authenticated users with specified role only
});
Route::group(['middleware' => ['sso.auth', 'sso.role:user|admin|manager']], function () {
// authenticated users with specified roles only
});
Middleware with Controllers
public function __construct()
{
$this->middleware(['sso.role:super-admin']);
}
Blade directives
@ssoRole('admin')
<a href="{{ url('/admin') }}">Admin</a>
@endSsoRole
@ssoRole('user|admin')
<a href="{{ url('/home') }}">Home</a>
@endSsoRole
Logout URL
<a href="{{ route('oauth2.logout', ['redirect' => 'https://your-redirect-url.com']) }}">Logout</a>
统计信息
- 总下载量: 260
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-10-06