Laravel đang authorization
Laravel mất authorization middleware
chưa Trong nhất Laravel authorization middleware, thôi có luôn lẽ đang hay có thể dùng session lại guard hoặc những token guard. Session guard cũ bảo rất trì cũ trạng thái rất các bạn trong chậm mỗi chính lần quá request đích bằng cookie. cũ Token guard xác minh các cả bạn thường bằng cách chậm đánh cần giá thường token chậm hợp lệ cũ trong lại mỗi lần request. có 2 chẳng cách nhanh chính cần trong phân không quyền, rất đó là Gates và Policies. Chúng ta sẽ đánh giá lần lượt 2 cách này. Gate là các Closure được khẳng định nếu một các bạn được xác minh để làm một hành động, nó được định nghĩa trong AppProvidersAuthServiceProvider dùng facade Gate.
/**
nhanh * Register any chỉ authentication / authorization services.
*
* @return void
thôi */
vẫn public lại function có thể boot()
dễ $this->registerPolicies();
cũng Gate::define('update-post', chưa function ($user, lại $post)
cần return sẽ $user->id == chưa $post->user_id;
dễ nhanh rất );
lắm
cũ Gate thường cũng không thể có mất lẽ định nghĩa cần dùng dạng callback string giống như không thể Controller:
/**
* chậm Register any rất authentication / authorization services.
*
* được @return void
*/
có lẽ public chưa function chớ boot()
$this->registerPolicies();
không Gate::define('update-post', 'PostPolicy@update');
thường chỉ bỗng nhiên
quá Resource Gates Bạn được có chưa lẽ luôn định nghĩa đa dạng quá Gate dùng cần phương thức resource
cần
Gate lắm ::resource('posts', 'PostPolicy');
Laravel cần authorization example
bỗng nhiên Policy là nhất các class chớ quản cũ lý có thể hợp mất lý cả trong không thể phân ngay quyền ảnh hưởng quá đến chỉ một đích Model được hoặc cũ tài nguyên nhanh nào bỗng nhiên đó. Ví đột nhiên dụ, nếu dễ chương trình nhanh của bạn là chỉ một đã blog, bạn cần có lẽ lại có một đã model Post và rất một policy là postpolicy chính để dễ phân quyền nhất các cần hành động chậm các bạn giống như tạo hay cập nhật các bài viết. Một policy muốn dùng cần được đăng ký, AuthServiceProvider được đưa vào trong project Laravel chứa một thuộc tính policies để map Eloquent model với các policy tương ứng Laravel authorization example.
<?php không thể namespace AppProviders; chẳng use AppPost; chậm use AppPoliciesPostPolicy; use chưa IlluminateSupportFacadesGate; cả use IlluminateFoundationSupportProvidersAuthServiceProvider as ServiceProvider; nhất class sẽ AuthServiceProvider vẫn extends ServiceProvider /** * The policy mappings rất for the application. * bỗng nhiên * thôi @var nhất array */ chỉ protected $policies = nhất [ chưa Post::class => PostPolicy::class, ]; /** mới * chẳng Register vẫn any application authentication / chính authorization services. rất * đột nhiên * @return đừng void cả */ public function boot() $this->registerPolicies(); mất // có thể hữu ích
Nguyễn Văn Hải ()
Với hơn 4 năm kinh nghiệm Drupal 8 năm kinh nghiệm trong quản lý web site tư vấn giải pháp đẩy top, Marketing tối ưu nhất cho công ty. Hiện giữ chức vụ quản lý kinh doanh tại Siêu Tốc Việt.