我今天對我的網站安全性和一些額外的代碼有點混淆,這些代碼是爲了使網站安全而編寫的。以下是應用安全性的2個位置。Laravel的Request類中授權方法的用途是什麼?
內部路由配置,爲了保護路由,我使用中間件來檢查用戶角色。
Route::group(['middleware' => ['web', 'SuperAdmin', 'auth']], function() {
Route::get('/Create-Department', '[email protected]');
});
我提到的2 Middlewares
。
Auth Middleware
:這是authentication
。SuperAdmin Middleware
:這是爲Authorization
。
第二個位置是Request類。這是代碼。在授權的方法,再在路線已經完成正在檢查同樣的事情
class DepartmentRequest extends Request
{
public function authorize()
{
if(\Auth::user() == null) {
return false;
}
if(\Auth::user()->isSuperAdmin()) {
return true;
}
return false;
}
public function rules()
{
return [
'Department' => 'required',
];
}
}
問題:我應該刪除支票Request類?這是不需要的驗證來確保請求的安全嗎?由於route.config已經在做這項工作。
授權方法的用途是什麼?我的意思是,我使用Request類來驗證表單輸入。我應該總是從授權方法返回true嗎?
'authorize'方法的用途是什麼?我的意思是,我使用'Request'類來驗證表單輸入。我應該總是從'authorize'方法返回true嗎? – Pankaj
我提到過2個'Middlewares'。 1.'Auth Middleware':這是''認證'。 2. IsAdmin中間件。這是用於授權的。 – Pankaj
作爲一個附加組件,從您的路由中刪除您的'web'中間件,並在最新版本中自動調用它。請看看[這裏](http://stackoverflow.com/questions/37069203/laravel-5-2-web-middleware-is-applied-twice) – Abbasi