yiisoft / access
检查访问权限的接口
2.0.0
2023-08-07 07:09 UTC
Requires
- php: ^8.0
Requires (Dev)
- maglnet/composer-require-checker: ^4.4
- phpunit/phpunit: ^9.6
- rector/rector: ^0.17.0
- roave/infection-static-analysis-plugin: ^1.25
- spatie/phpunit-watcher: ^1.23
- vimeo/psalm: ^4.30|^5.3
This package is auto-updated.
Last update: 2024-09-18 05:53:56 UTC
README
Yii Access
此包提供了一种检查用户是否拥有特定权限的接口。可以通过传递可选参数进行细粒度的访问检查。此外,还提供了开箱即用的 DenyAll
和 AllowAll
实现。
要求
- PHP 8.0 或更高版本。
安装
可以使用 Composer 安装此包
composer require yiisoft/access
通用用法
例如 RBAC 这样的访问检查器实现了此接口。用户身份可以使用它来检查访问权限
use Yiisoft\Access\AccessCheckerInterface; class UserService { private AccessCheckerInterface $accessChecker; public function __construct(AccessCheckerInterface $accessChecker) { $this->accessChecker = $accessChecker; } public function can(string $permissionName, array $parameters = []): bool { return $this->accessChecker->userHasPermission( $this ->getCurrentUser() ->getId(), $permissionName, $parameters ); } public function getCurrentUser(): User { // ... } }
在处理器中可能看起来像以下这样
public function actionList(UserService $userService) { if (!$userService->can('list_posts')) { // access denied } // list posts }
文档
如果您需要帮助或有疑问,Yii 论坛 是一个不错的选择。您还可以查看其他 Yii 社区资源。
许可证
Yii Access 是免费软件。它根据 BSD 许可证发布。有关更多信息,请参阅 LICENSE
。
由 Yii Software 维护。