티스토리 뷰
permission은 spatie에서 만든 ACL기능을 하도록 해준다.
코끼리쿤한테 물어보면 둘다 잘 대답해주는데,
- permission
https://packagist.org/packages/spatie/laravel-permission
spatie/laravel-permission - Packagist
README Associate users with permissions and roles Sponsor If you want to quickly add authentication and authorization to Laravel projects, feel free to check Auth0's Laravel SDK and free plan at https://auth0.com/developers. Documentation, Installation, an
packagist.org
인스톨이나 뭐 그런건 대략 따라하면 되고,
혹시 몰라서 가져옴. 보고싶으면 더보긔!
https://www.lesstif.com/php-and-laravel/laravel-role-permission-acl-106857730.html
Laravel Role 과 Permission 으로 ACL 관리하기
여러 Permission 을 Role 로 묶고 Role 을 User 별로 할당하는 것이 관리가 더 용이하므로 권장하고 있습니다.
www.lesstif.com
쨘!!!
은혜로운 형제님께서 다 만들어 두셨다는 점!
그리고 나의 샘플코드 is go!
use Spatie\Permission\Models\Role;
use Spatie\Permission\Models\Permission;
$user = User::find(230035);
var_dump($user->roles()->get());
$role = Role::create(['name' => 'user']);
$user->assignRole($role);
dd($user->roles()->get());
길지만, 이렇게 나온다. 이미 admin은 아까 테스팅 할때 있어서, 이미 있는거고, user가 이번에 새로 생성 된거.
퍼미션도 똑같다. 샘플코드 ㄱㄱ
use Spatie\Permission\Models\Role;
use Spatie\Permission\Models\Permission;
$user = User::find(230035);
var_dump($user->permissions()->get());
$permission = Permission::create(['name' => 'editor']);
$user->givePermissionTo($permission);
dd($user->roles()->get(), $user->permissions()->get());
이런식입니다. 똑같습니다.
베스트 프렉티스가 있긴한데
https://spatie.be/docs/laravel-permission/v4/best-practices/roles-vs-permissions
Roles vs Permissions | laravel-permission
laravel-permission
spatie.be
요기 보시면 되고용.
우리 시스템에도 잘 적용시킬 수 있을거 같긴한데,
자체적으로 쓰는 유저 그룹의 롤 겸 퍼미션 체크하는 부분이 있어서 다 걷어내야한다는 점.........하. 인생.
그리고 디비가 느리다면 캐싱해서 사용할 수도 있음. (정보 알려주신 은혜로운 형제님 감사합니다!)
https://spatie.be/docs/laravel-permission/v3/advanced-usage/cache
'Laravel' 카테고리의 다른 글
[laravel8] testing....우아.....phpunit.xml 너 이자식! (0) | 2022.10.19 |
---|---|
[laravel 8] sail을 사용해서 환경을 구축해봅시다! (0) | 2022.07.13 |
laravel 8] spatie/permission 테스트 코드 (0) | 2021.06.27 |
도커(라라독) 사용하기! (1) | 2021.06.27 |
[Laravel 8] GraphQL을 적용해보자. (0) | 2021.04.23 |
- Total
- Today
- Yesterday
- 엘라스틱서치한글성공!
- Testing
- 배열을_이쁘게
- 테스팅환경
- PhpStorm
- 더미데이터도유형이있어요
- twoserven.kr/0410
- UTF8
- xml로도
- fmf
- JSON으로도
- twoseven.kr/0410
- gcp
- 테스팅
- 프로그래밍은디버거부터시작이다
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |