2026 年 10 月 20 日,开源统一权限管理平台 GrantForge 正式发布 2026.2.0 版本。本次更新重点扩展大数据与分布式系统的权限管理能力,新增 5 个外部系统服务插件及对应代理,同时进一步增强策略引擎、访问审计和自动化发布流程。
关于 GrantForge
GrantForge 是一款基于 Java 17、Spring Boot 4 构建的开源统一权限管理平台,面向需要集中管理用户、角色、资源及访问策略的开发者和企业。
项目提供 RBAC 权限管理、数据行与字段级权限、权限审计、多租户及标准协议接入等能力,支持通过插件和代理将统一的访问控制扩展到外部系统。
随着越来越多的应用依赖数据库、消息队列、分布式计算及大数据服务,权限管理也需要从传统的应用接口进一步延伸到底层基础设施。
本次 2026.2.0 版本正是围绕这一方向展开。
一、五大外部系统权限管理能力正式加入
本次版本新增 Apache Hive、Apache Kafka、Apache HBase、Trino 和 Apache Hadoop YARN 的服务插件与权限执行代理。
这些插件不仅支持资源和权限策略定义,还能够通过对应系统的授权接口执行访问检查。
1. Apache Hive:细粒度数据访问控制
新增 Hive 服务插件及 HiveServer2 代理,支持对数据库、表、列、UDF、URL、HiveServer2 服务和复制操作配置权限。
核心能力包括:
-
SQL 访问检查:在 HiveServer2 中检查用户执行的语句。
-
元数据过滤:过滤
SHOW查询结果,避免返回无权查看的元数据。 -
列级权限控制:支持对指定列进行数据屏蔽。
-
行级权限控制:根据授权策略过滤查询结果。
-
UDF 权限管理:按照 Apache Ranger 的语义管理 UDF 权限,临时 UDF 的全局授权限定为
tempudfadmin。
通过这些能力,可以将访问控制进一步落实到 Hive 的数据读取与查询执行过程。
2. Apache Kafka:Broker 与 Controller 级授权
新增 Kafka 服务插件,以及运行在 Broker 和 Controller 侧的授权器。
支持管理的资源包括:
-
Topic(主题)
-
Consumer Group(消费组)
-
Transactional ID(事务 ID)
-
Cluster(集群)
-
Delegation Token(委派令牌)
-
SCRAM User(用户)
授权模型使用 Kafka 自身的访问类型与权限蕴含关系。
代理能够在请求进入 Kafka 相关操作时执行授权检查,同时通过策略引擎支持幂等生产者场景所需的资源层级权限判断。
3. Apache HBase:深入列族与列级别的权限控制
新增 HBase 服务插件与 Master、RegionServer 协处理器。
资源模型覆盖:
-
Namespace(命名空间)
-
Table(表)
-
Column Family(列族)
-
Column(列)
-
Global(全局操作)
除了基本的访问检查,代理还支持根据用户权限过滤可读取的列,隐藏无权访问的数据内容。
这使 HBase 的权限管理能够从表级资源进一步延伸至更细粒度的数据访问范围。
4. Trino:查询授权、行过滤与列屏蔽
新增 Trino 服务插件和 System Access Control 实现,覆盖以下资源:
-
Catalog(目录)
-
Schema(模式)
-
Table(表)
-
Column(列)
-
Function(函数)
-
Procedure(过程)
-
Session Property(会话属性)
代理支持在查询执行过程中检查权限,并进行行级过滤和列级屏蔽。
为适配 Trino 的版本差异,本次提供两套系统访问控制实现:
-
Trino 470–478
-
Trino 479 及后续版本
5. Apache Hadoop YARN:统一管理队列与应用授权
新增 YARN 服务插件及 ResourceManager 授权提供者。
支持队列和应用资源权限管理,使用 YARN 自身的 submit_app、admin_queue 访问类型。
主要能力包括:
-
应用提交权限控制
-
队列管理权限控制
-
集群管理操作授权
-
基于客户端地址条件的访问检查
由此可以通过 GrantForge 的策略模型统一管理 YARN 相关操作的授权决策。
二、策略引擎进一步增强
除了新增外部系统,本次还对策略引擎进行了扩展,使其能够处理更加复杂的资源层级关系。
1. 支持资源层级的权限判断
此前,部分场景需要判断用户是否拥有某个具体资源的权限。
但实际使用中,还存在另一类需求:用户虽然没有直接访问上级资源的权限,却拥有其下某些子资源的访问权限。
例如,用户拥有某张表的权限时,系统在列举数据库等上层资源时,也需要考虑下层授权。
新版策略引擎增加 _any 访问类型,在资源自身或其下任意资源存在允许的访问时,即可满足相应判断。
2. 支持某一资源层级的任意资源授权检查
策略引擎现在可以判断用户是否有权限对某个资源层级中的任意资源执行指定操作。
这对于 Kafka 幂等生产者等授权场景尤为重要,使授权检查不再局限于单个明确的资源名称。
三、访问审计优化:合并高频允许事件
在消息队列和分布式系统中,访问检查可能发生得非常频繁。
如果每次授权成功都独立记录一条审计事件,就可能产生大量重复记录。
本次新增访问审计合并机制:
-
同一时间窗口内,相同的允许访问合并记录。
-
合并后的事件保留发生次数。
-
记录最后一次访问的时间。
-
对于拒绝访问,仍立即记录审计事件。
通过减少重复的允许事件,可以让审计记录更加集中,同时保留访问次数与拒绝事件信息。
四、插件系统与 Kerberos 集成改进
插件 API 升级至 1.2.0。
新版本统一向插件提供 Kerberos Realm 配置,避免多个使用 Kerberos 的插件相互覆盖 krb5.conf。
同时,代理能够使用各自外部系统的资源和权限术语展示访问策略,帮助开发者更直观地理解授权规则。
五、文档与工程发布流程升级
本次版本不仅关注功能,也进一步完善了文档和自动化交付流程。
文档完善
-
Hive、Kafka、HBase、Trino、YARN 的插件和代理文档已覆盖全部 11 种文档语言。
-
README 增加受支持组件及集成测试验证版本的信息。
-
新增的系统集成能力配有对应配置和使用说明。
CI/CD 与发布优化
-
每次 Release Tag 都会触发完整 CI,发布流程等待该次 CI 完成。
-
发布包改为并行构建。
-
npm 发布使用 Trusted Publishing(可信发布)。
-
缺少发布日志的版本将被阻止打标签。
-
日常 CI 在 Java 检查通过后,根据代码变更运行相关任务。
-
Maven 部署阶段跳过集成测试,避免重复测试和超时影响制品发布。
-
npm 包增加仓库元数据,以支持 provenance 验证。
这些调整旨在提高发布流程的稳定性、效率和可追溯性。
六、问题修复
本次还修复了多个测试和发布流程问题:
-
PostgreSQL:调整种子数据和索引准备顺序,使性能计时 API 在已完成分析的表上执行。
-
ZooKeeper:调整代理 JAR 测试的执行顺序,确保在打包后运行。
-
HDFS 3.2:解决代理集成测试中的 forked JVM 超时影响 Maven GitHub Packages 部署的问题。
-
npm:补充仓库声明,解决制品 provenance 验证所需的元数据问题。
七、总结与展望
GrantForge 2026.2.0 的重要变化,是进一步完善统一策略管理与外部系统权限执行之间的连接。
从 Apache Hive 的行列级数据访问控制,到 Kafka 的 Broker 请求授权,再到 HBase、Trino 和 YARN 的细粒度资源权限管理,GrantForge 的权限管理范围正在向更多基础设施扩展。
与此同时,资源层级授权、审计事件合并以及插件配置管理等改进,也为多系统权限治理提供了更多基础能力。
未来,GrantForge 将继续围绕统一授权、外部系统集成、细粒度数据权限和权限治理能力持续演进。
欢迎开发者体验、反馈问题,并参与开源社区建设。
项目地址
-
GitHub 仓库:https://github.com/devlive-community/grantforge
-
官方网站:https://grantforge.devlive.org/
-
GitHub Release:https://github.com/devlive-community/grantforge/releases/tag/v2026.2.0
-
完整版本对比:https://github.com/devlive-community/grantforge/compare/v2026.1.0...v2026.2.0
GrantForge 采用 MIT 开源许可证。
如果 GrantForge 对你的项目有所帮助,欢迎在 GitHub 点亮一颗 Star,也欢迎通过 Issue 和 Pull Request 参与共建。
让权限管理更加统一、清晰、可控。