반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Java
- Python
- win32
- reactnative
- Eclipse
- 코로나19
- 인민공원
- 개인사업자
- vue
- Tutorial
- blockchain
- Bootstrap
- php
- 보정명령
- 사업자계좌
- 전자소송
- 홈택스
- javascript
- 당사자표시정정신청서
- 체당금
- 코로나
- Sentinel
- cartalyst
- elasticSearch
- as후기
- 이더리움
- Laravel
- auth
- Blade
- 소액임금체불
Archives
- Today
- Total
그냥 사는 이야기
Laravel 5.3 Sentinel - Restricting Access According to Roles 본문
Development/Web
Laravel 5.3 Sentinel - Restricting Access According to Roles
없다캐라 2020. 1. 21. 10:52반응형
Admin Controller 추가
php artisan make:controller AdminController
routes/web.php
Route::get('earnings', 'AdminController@earnings');
AdminController
public function earnings()
{
return 'Total earnings 999';
}
Admin Middleware 추가
php artisan make:middleware AdminMiddleware
App/Http/Middleware/AdminMiddleware.php
use Sentinel;
...
public function handle($request, Closure $next)
{
// 1. User should be authenticated
// 2. Authenticated user should be an admin
if (Sentinel::check())
return $next($request);
return redirect('/');
}
App/Http/Kernel.php
...
protected $routeMiddleware = [
...
'admin' => \App\Http\Middleware\AdminMiddleware::class,
];
routes/web.php
Route::get('earnings', 'AdminController@earnings')->middleware('admin');
여기까지 했지만 earnings 페이지에 가보면 모든 계정이 다 접근이 가능하다. 이에 대해 restrict를 걸어보겠다.
restrict 걸기
log 사용하기
App/Http/Middleware/AdminMiddleware.php
if (Sentinel::check()) {
\Log::info('role', ['role' => Sentinel::getUser()->roles()->first()]);
return $next($request);
}
로그를 찍는 것은 Log::info()를 사용하면 된다. 로그를 찍게 되면 storage/logs 디렉토리 밑에 laravel.log에 남게 된다.
현재는 log를 사용하여 Sentinel에서 가져오는 user role 정보를 확인해본다.
'Development > Web' 카테고리의 다른 글
Laravel 5.3 Blog System - Setup Database (0) | 2020.01.22 |
---|---|
Laravel 5.3 Sentinel - Visitors & Manager (0) | 2020.01.21 |
Laravel 5.3 Sentinel - Roles (0) | 2020.01.21 |
Laravel 5.3 Sentinel - Logout & show content to logged users only (0) | 2020.01.21 |
Laravel 5.3 Sentinel - Menu (0) | 2020.01.21 |
Comments