1 Star 0 Fork 0

PengHengBen/devcloud-mini

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

mcenter

在mongodb中创建用户

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. 路由权限配置:
// 怎么控制哪些接口认证,哪些接口不认证
r.Route(r.GET("/").To(h.QuerySecret).
    Doc("查询凭证列表").
    // 作为OpenApi的值作为展示
    Metadata(restfulspec.KeyOpenAPITags, tags).
    // 通过auth来控制是否开启认证和鉴权
    Metadata("auth", true).
    Metadata("permission", true).
    // endpoint注册时使用
    Metadata("resource", "secret").
    // 如果token过期,报错401认证失败,如果token没权限,报错403鉴权失败
    Metadata("action", "list"))
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/penghengben/devcloud-mini.git
git@gitee.com:penghengben/devcloud-mini.git
penghengben
devcloud-mini
devcloud-mini
52595909206d

搜索帮助