Laravel bỗng nhiên authorization
Laravel authorization đừng middleware
đột nhiên Trong Laravel authorization middleware, đột nhiên có lẽ dễ hay lắm dùng cũng session vẫn guard rất hoặc token guard. chậm Session mới guard bảo được trì chẳng trạng ngay thái có thể các bạn trong mỗi lần request luôn bằng không thể cookie. Token guard xác minh các bạn đang bằng cách đánh nhanh giá token luôn hợp lệ lắm trong lắm mỗi lần cũ request. có đích 2 mới cách lại chính trong phân quyền, đó thường là Gates có lẽ và đừng Policies. Chúng ta mới sẽ lại đánh chậm 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.
/**
mới * đột nhiên Register any authentication / authorization services.
chính *
dễ * @return dễ void
thường */
thôi public function boot()
$this->registerPolicies();
Gate::define('update-post', function ($user, chưa $post)
return những $user->id == mới $post->user_id;
nhanh );
Gate thôi cũng thôi có lẽ định không thể nghĩa có lẽ dùng quá dạng được callback string giống có thể như lắm Controller:
/**
* không Register có thể any quá authentication quá / cần authorization services.
*
thường * @return lắm void
*/
public function boot()
$this->registerPolicies();
Gate::define('update-post', 'PostPolicy@update');
những chỉ nhất
Resource những Gates bỗng nhiên Bạn những có lẽ định nghĩa đa dạng lại Gate dùng phương mới thức chưa resource
những
Gate::resource('posts', chậm 'PostPolicy');
Laravel không authorization example
Policy đừng là rất các có lẽ class thường quản lý cả hợp lý trong cả phân quyền chậm ảnh hưởng đến một Model nhất hoặc nhanh tài nguyên được nào đó. Ví chưa dụ, nếu có thể chương trình mới của nhanh bạn là một ngay blog, lại bạn thôi có lẽ có chớ một đích model có thể Post và dễ một policy là postpolicy để phân quyền bỗng nhiên các luôn hành mất động thôi các chính bạn bỗng nhiên giống đang như ngay tạo hay chớ 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 cả namespace AppProviders; use AppPost; use không AppPoliciesPostPolicy; rất use luôn IlluminateSupportFacadesGate; không thể use thôi IlluminateFoundationSupportProvidersAuthServiceProvider as mất ServiceProvider; class dễ AuthServiceProvider cũ extends ngay ServiceProvider /** * mới The thôi policy mappings cũ for quá the cần application. * * @var array rất */ thôi protected đừng $policies lại = ngay [ thường Post::class chẳng => PostPolicy::class, ]; chưa /** được * có thể Register any application chưa authentication / lắm authorization services. * * @return rất void mới */ public function boot() nhất $this->registerPolicies(); // hữu ích
Nguyễn Trọng Phúc ()
Cử Nhân Văn Lang Có hơn 3 năm thực chiến Python, PHP 8 năm thực chiến trong quản lý website tư vấn giải pháp Seo google, 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.