/go-sso

golang gin sso web example

Primary LanguageGo

golang sso

project start

  1. 参考config/example_config.yml, 本地新建 conf/local.yml
  2. export GO_SSO_WORKDIR = <project_path>
  3. go mod tidy
  4. go run main.go

功能说明

  1. cli 命令行工具

go run main.go migrate  # 数据库初始化 需要创建正式数据库以及一个测试数据库
go run main.go createsuperuser username password  # 创建超级用户
go run main.go refresh_permission  # 更新用户权限

  1. swagger文档
# install swag
go get -u github.com/swaggo/swag/cmd/swag
# 自动生成文档
swag init
  1. start server
go run -tags=doc main.go  // 带doc模式启动
go build main.go  // 无 doc

开发计划

  • 通用组件

    • swagger文档
    • 配置管理
    • zap日志服务
    • 集中式err处理
    • 命令行工具
    • docker启动脚本
    • error邮件通知
  • 系统用户管理

    • 登录
      • 账号密码登录
      • 微信扫码登录
      • 手机号登录
      • 邮箱登录
    • 注册
      • 手机验证码认证
    • 修改密码
      • 手机验证码
    • 用户认证 支持 jwtsession
    • 权限管理 通过casbin实现restful风格权限管理