feat: 方案100%匹配 — RBAC动态权限+Grafana监控+目录库独立微服务+全国目录中心+标识同步
This commit is contained in:
@@ -12,6 +12,7 @@ import (
|
||||
"github.com/tcs-iptv/tcs/internal/config"
|
||||
"github.com/tcs-iptv/tcs/internal/httpx"
|
||||
"github.com/tcs-iptv/tcs/internal/macode"
|
||||
"github.com/tcs-iptv/tcs/internal/monitor"
|
||||
"github.com/tcs-iptv/tcs/internal/service"
|
||||
)
|
||||
|
||||
@@ -93,6 +94,14 @@ func main() {
|
||||
svc := service.New(ch, gen)
|
||||
h := api.NewHandler(svc)
|
||||
|
||||
// 用户/组织管理服务(系统管理模块)
|
||||
adminSvc := service.NewAdminService()
|
||||
adminH := api.NewAdminHandler(adminSvc)
|
||||
|
||||
// RBAC 动态权限矩阵(系统管理模块补足)
|
||||
rbac := httpx.NewRBACManager()
|
||||
rbacH := api.NewRBACHandler(rbac)
|
||||
|
||||
// 鉴权密钥库(MVP 预置四角色示例密钥;生产从 Vault/DB 加载)
|
||||
keys := httpx.NewMemoryKeyStore()
|
||||
keys.Add("ak-regulator", "sk-regulator", string(chain.RoleRegulator))
|
||||
@@ -103,8 +112,14 @@ func main() {
|
||||
r := gin.Default()
|
||||
httpx.Health(r, "api-svc")
|
||||
|
||||
// 运行监控:Prometheus 指标采集
|
||||
r.Use(monitor.Middleware())
|
||||
r.GET("/metrics", monitor.Handler())
|
||||
|
||||
v1 := r.Group("/api/v1", httpx.AuthMiddleware(keys))
|
||||
h.Register(v1)
|
||||
adminH.Register(v1)
|
||||
rbacH.Register(v1)
|
||||
|
||||
log.Printf("api-svc listening on %s", cfg.APIAddr)
|
||||
if err := r.Run(cfg.APIAddr); err != nil {
|
||||
|
||||
Reference in New Issue
Block a user