taolib.testing.auth.rbac#
通用 RBAC 策略引擎。
提供与业务领域解耦的基于角色的访问控制。
Classes#
权限定义。 |
|
角色定义。 |
|
RBAC 策略引擎。 |
Module Contents#
- class taolib.testing.auth.rbac.Permission#
权限定义。
- 参数:
resource -- 资源类型
action -- 操作类型
- class taolib.testing.auth.rbac.RoleDefinition#
角色定义。
- 参数:
name -- 角色名称
description -- 角色描述
permissions -- 权限列表
scopes -- 作用域映射,键为作用域类型,值为允许的范围列表。
None值表示该作用域无限制。
- permissions: list[Permission] = []#
- class taolib.testing.auth.rbac.RBACPolicy(roles: dict[str, RoleDefinition])#
RBAC 策略引擎。
提供基于角色的权限检查和作用域验证。
- 参数:
roles -- 角色名称到 RoleDefinition 的映射
- _roles#
- get_role(name: str) RoleDefinition | None#
获取角色定义。
- 参数:
name -- 角色名称
- 返回:
角色定义,如不存在返回 None
- has_permission(user_roles: list[str], resource: str, action: str) bool#
检查用户角色列表中是否有任何角色拥有指定权限。
- 参数:
user_roles -- 用户拥有的角色名称列表
resource -- 资源类型
action -- 操作类型
- 返回:
是否有权限