Skip to content

TencentBlueKing/iam-go-sdk

Repository files navigation

license Release Version PRs Welcome

(English Documents Available)

Overview

iam-go-sdk 是蓝鲸权限中心(BK-IAM)提供的用于快速接入权限体系的go SDK

Features

  • 鉴权支持: IsAllowed / IsAllowedWithCache
  • 单个操作批量资源鉴权: BatchIsAllowed
  • 单个资源批量操作鉴权: ResourceMultiActionsAllowed
  • 批量资源批量操作鉴权: BatchResourceMultiActionsAllowed
  • 生成无权限申请URL: GetApplyURL
  • 生成无权限协议json: GenPermissionApplyData
  • 资源反向拉取接口basic auth鉴权: IsBasicAuthAllowed / 以及basic auth middleware
  • 获取系统Token: GetToken
  • 支持prometheus统计接口调用信息
  • 支持反向拉取框架 dispatcher/provider interface
  • 支持注册权限模型: model 相关接口
  • 支持使用 migrate 注册权限模型: Migrate

Getting started

Installation

$ go get -u github.com/TencentBlueKing/iam-go-sdk

Usage

Benchmark

$ make bench

BenchmarkExprCellEqual-12         	 6156810	       193 ns/op	      32 B/op	       1 allocs/op
BenchmarkExprCellNotEqual-12      	 6286323	       190 ns/op	      32 B/op	       1 allocs/op
BenchmarkExprCellLess-12          	 8583621	       142 ns/op	      32 B/op	       1 allocs/op
BenchmarkExprCellStartsWith-12    	 9665572	       126 ns/op	      32 B/op	       1 allocs/op
BenchmarkExprCellIn-12            	 2872075	       411 ns/op	      64 B/op	       3 allocs/op

Roadmap

IAM Repos

Support

BlueKing Community

  • BK-CI:蓝鲸持续集成平台是一个开源的持续集成和持续交付系统,可以轻松将你的研发流程呈现到你面前。
  • BK-BCS:蓝鲸容器管理平台是以容器技术为基础,为微服务业务提供编排管理的基础服务平台。
  • BK-PaaS:蓝鲸PaaS平台是一个开放式的开发平台,让开发者可以方便快捷地创建、开发、部署和管理SaaS应用。
  • BK-SOPS:标准运维(SOPS)是通过可视化的图形界面进行任务流程编排和执行的系统,是蓝鲸体系中一款轻量级的调度编排类SaaS产品。
  • BK-CMDB:蓝鲸配置平台是一个面向资产及应用的企业级配置管理平台。

Contributing

如果你有好的意见或建议,欢迎给我们提 Issues 或 Pull Requests,为蓝鲸开源社区贡献力量。

License

基于 MIT 协议, 详细请参考LICENSE