pickmap / keycloak-middleware
keycloak
0.5.0
2023-09-10 07:09 UTC
Requires
- firebase/php-jwt: ^6.8
- laravel/framework: 8.*|9.*|10.*
- pickmap/response: ^0.2.0
README
步骤 #1
使用以下代码安装包
composer require pickmap/keycloak-middleware
步骤 #2
进入 /config/app.php
并添加 KeycloakMiddlewareServiceProvider::class
代码
'providers' => ServiceProvider::defaultProviders()->merge([ /* * Package Service Providers... */ KeycloakMiddlewareServiceProvider::class,
步骤 #3
在项目的根目录终端中添加此命令
php artisan vendor:publish --tag=keycloak-middleware
然后将你的 keycloak 公钥添加到 /config/keycloak-middleware.php
return [ 'public_key' => null, ];
步骤 #4
现在你可以通过为你的路由安装中间件 keycloak-middleware
来检查 keycloak 令牌
Route::get('/', function () { dd(request()->all()); })->middleware('keycloak-middleware');
范围和角色
此外,你也可以通过发送所需的范围或角色来限制用户的访问
"*" 表示全部(角色或范围)
Route::group(['prefix' => 'v1','middleware' => 'keycloak-middleware:*,*'],function(){ # routes }); Route::group(['prefix' => 'v1','middleware' => 'keycloak-middleware:admin,*'],function(){ # routes }); Route::group(['prefix' => 'v1','middleware' => 'keycloak-middleware:admin|user,view.profile|send.email'],function(){ # routes });