首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Yii-Permission 3.0 发布:Apache Casbin 官方 Yii3 权限扩展

Yii-Permission 3.0 发布:Apache Casbin 官方 Yii3 权限扩展

作者头像
Tinywan
发布于 2026-09-15 14:31:28
发布于 2026-09-15 14:31:28
1380
举报
文章被收录于专栏:开源技术小栈开源技术小栈

Apache Casbin 行业级权限标准

Apache Casbin 是 Apache 基金会旗下全球开源授权标准项目,英特尔、阿里巴巴、腾讯、微软等众多知名企业均在线落地使用。它依托 PERM 元模型设计,原生兼容 ACL、RBAC、ABAC、多租户域等几乎所有授权场景,一套策略文件就能适配管理后台、API 服务、SaaS 平台、零信任架构等业务。

同时 Casbin 实现全语言统一标准,Go、Java、PHP、Python、Rust 各端引擎逻辑、API 完全一致,是企业避免重复开发权限模块的成熟标准方案。

php-casbin/yii-permission 是 Apache Casbin 官方维护的 Yii 专属适配扩展,负责打通 Casbin 权限引擎与 Yii 框架底层。2026年7月底正式推出 v3.0.0 大版本,整体重构底层代码,完整适配 Yii 3.0 现代化组件体系,全面遵循 PSR 系列开发规范。

v3.0 核心升级亮点

1. 适配 Yii3 现代体系,拉高运行基线

最低运行环境升级至 PHP 8.2,充分利用 PHP 强类型、属性类型等新特性,从根源减少隐式转换带来的线上 Bug;同时完整适配 Yii3 全新依赖注入体系,统一采用 yiisoft/config 做容器配置,摒弃 Yii2 老式组件声明写法,贴合 Yii3 原生开发习惯。

2. 架构全面革新:切换 PSR-15 标准中间件

Yii2 旧版本依靠控制器 Behavior 完成权限拦截,耦合严重、无法按路由分组复用;3.0 完全重构这部分逻辑,使用行业通用 PSR-15 HTTP 中间件替代原有控制器组件,内置两套核心中间件:

  • EnforcerMiddleware:全局、路由分组自动执行 Casbin 鉴权拦截;
  • RequestMiddleware:统一解析请求上下文、提取登录用户信息。 权限逻辑彻底解耦,灵活挂载,复用性大幅提升。

3. 兼容框架原生鉴权语法,迁移零负担

新增 AccessChecker 类,实现 Yii3 官方 AccessCheckerInterface 接口,业务代码无需改动,依旧使用 $user->can() 原生写法完成权限校验,底层交由 Apache Casbin 高性能引擎执行复杂规则判定:

代码语言:javascript
复制
if ($user->can('article.update', ['article' => $article])) {
    // 执行文章更新业务逻辑
}

核心特性与破坏性变更

参照官方 GitHub Release 发布日志,本次版本更新要点整理:

  1. 适配 Yii 3.0 框架:完整支持 Yii 3.0 独立组件生态与依赖注入规范。
  2. 环境要求升级:强制运行环境为 PHP 8.2 及以上 + Yii 3.0 框架包,不再兼容低版本。
  3. PSR-15 中间件架构:全面引入 EnforcerMiddleware、RequestMiddleware,废弃旧版控制器 Behavior 组件。
  4. 原生 AccessChecker 支持:新增 AccessChecker 实现官方鉴权接口,无缝对接 $user->can() 语法。
  5. 配置整合与 CI 优化:统一使用 yiisoft/config 管理 DI 配置;同步升级 GitHub Actions CI 流水线,更新 PHP 多版本测试矩阵、优化代码覆盖率检测配置。

适配场景与落地优势

推荐使用人群

  1. 从零搭建 Yii3 新项目,需要 RBAC、多租户、属性权限等精细化授权能力;
  2. 存量 Yii 项目升级至 Yii3,原有 Casbin 权限体系需要平滑迁移。

核心落地优势

  1. 权威标准:依托 Apache Casbin 开源项目,经过大量企业生产验证,满足等保审计相关权限要求;
  2. 多模型兼容:一套权限引擎同时支撑简单后台、复杂多租户 SaaS 系统;
  3. 策略动态生效:权限规则可在线修改,无需改动业务代码、重启服务;
  4. 跨技术栈统一:企业多语言服务(Java/Go/PHP)可共用同一套 Casbin 权限模型,降低维护成本。

PHP 主流框架同生态配套扩展

除本次更新的 Yii 框架权限组件外,Apache Casbin PHP 生态还针对高性能常驻框架 Webman 推出了配套权限扩展:webman-permission

仓库地址:https://github.com/php-casbin/webman-permission

该扩展专为 Webman 常驻协程架构深度优化,适配 Webman 中间件、容器特性,和 yii-permission 共用同一套 Casbin 权限规则定义,PHP 技术栈开发者可根据自身框架选型自由切换:

  • 传统Web项目、Yii技术栈:选用 yii-permission
  • 高并发接口、SaaS常驻服务、协程项目:选用 webman-permission

Casbin + ThinkORM 打造 Webman RBAC 权限管理实战

PHP-Casbin 多租户权限控制模型

PHP-Casbin如何构建SaaS多租户权限系统架构

Casbin实战教程:ABAC控制模型授权策略设计与实践

Casbin权限模型实战大揭秘,教育培训领域的创新实践和高效优化策略

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-08-03,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • Apache Casbin 行业级权限标准
  • v3.0 核心升级亮点
  • 1. 适配 Yii3 现代体系,拉高运行基线
  • 2. 架构全面革新:切换 PSR-15 标准中间件
  • 3. 兼容框架原生鉴权语法,迁移零负担
    • 核心特性与破坏性变更
    • 适配场景与落地优势
  • 推荐使用人群
  • 核心落地优势
  • PHP 主流框架同生态配套扩展
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档