mcenter

command module
v0.0.0-...-f4276bb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 23, 2023 License: MIT Imports: 3 Imported by: 0

README

use menter_mini
db.createUser({user: "mcenter", pwd: "123456", roles: [{ role: "dbOwner", db: "menter_mini" }]})

认证

开发接入中间件 gorestful/gin

权限

比如 cmdb 里 secret接口, 并不是所有的都能访问, 我就需要设计一个权限系统(RBAC)

如何把 endpoint 注册给 mcenter

业务对接中心

mcenter rpc客户端初始化需求提前进行, 默认配置能用, 如果生产使用需要配置

  1. 认证鉴权中间件对接:
r.Filter(auth.NewAuthFilter("cmdb"))
  1. 功能列表注册:
// 所有的路由都已经加载好了, 获取当前DefaultContainer 里面注册的所有的WebService(一个service 就是一个模块)
r := tools.NewEndpointRegister("cmdb")
err := r.Registry(context.Background(), h.r)
if err != nil {
    logger.L().Error().Msgf("registry endpoint error, %s", err)
}
  1. 路由权限配置:
// 怎么控制哪些接口认证,哪些接口不认证
// @role("admin")
r.Route(r.GET("/").To(h.QuerySecret).
    Doc("查询凭证列表").
    // 作为OpenApi的值作为展示
    Metadata(restfulspec.KeyOpenAPITags, tags).
    // 通过auth来控制是否开启认证和鉴权
    Metadata("auth", true).
    Metadata("permission", true).
    // endpoint注册时使用
    Metadata("resource", "secret").
    Metadata("action", "list"))

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL