- 8张llm_前缀表(手写幂等DDL): vendor/account/model/api_profile/org_policy/org_quota/user_quota/usage - gateway.py 门禁链: 限流→限额→策略选模型(主备容错)→账号×端点轮转(偏好过滤+余额加权+冷却避让)→预授权-结算 - api_key AES单层加密(非RC4,盐不对称不可解); 限流Redis分钟窗口(db4) fail-open - 双维度记账: 一次调用同行记cost(账号侧)+charge(组织池侧); 充值=recharge行 - CRUD+index.ui 8卡片导航+总览; appcodes字典5组; 设计规范+30测试用例 - 策略即开关: 机构无策略→__LEGACY__走旧llm表(向后兼容零改动)
37 lines
933 B
Python
37 lines
933 B
Python
#!/usr/bin/env python3
|
|
"""pipeline_llm module RBAC permission registration.
|
|
|
|
Run from app root: py3/bin/python pkgs/pipeline-llm/scripts/load_path.py
|
|
Requires app-root wrapper set_role_perm.py.
|
|
"""
|
|
import subprocess
|
|
|
|
MOD = "pipeline-llm"
|
|
|
|
PATHS_ANY = [] # 本模块无免登录资源(全部需登录)
|
|
|
|
PATHS_LOGINED = [
|
|
f"/{MOD}/",
|
|
f"/{MOD}/index.ui",
|
|
]
|
|
|
|
# api/ 与生成的 CRUD 目录用通配符一次覆盖
|
|
PATHS_WILDCARD_LOGINED = [
|
|
f"/{MOD}/**",
|
|
]
|
|
|
|
|
|
def register_paths():
|
|
for path in PATHS_ANY:
|
|
subprocess.run(["py3/bin/python", "set_role_perm.py", "any", path])
|
|
print(f" any: {path}")
|
|
for path in PATHS_LOGINED + PATHS_WILDCARD_LOGINED:
|
|
subprocess.run(["py3/bin/python", "set_role_perm.py", "logined", path])
|
|
print(f" logined: {path}")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
print(f"=== {MOD} (pipeline_llm) RBAC registration ===")
|
|
register_paths()
|
|
print("Done.")
|