Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

项目主要提供系统用户统一认证服务(SSO),采用前后端分离的架构模式,支持CAS 3.0、OAuth 2.0、SAML2和OIDC协议。后端项目基于Gin + Gorm + Casbin实现,前端项目基于 Vue Admin Template 进行二次开发。

License

Notifications You must be signed in to change notification settings

guyunlige/ops-api

Open more actions menu
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

252 Commits
252 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

项目介绍

仅需一次认证,即可访问所有授权访问的应用系统,可以为企业人员提供便捷、高效的访问体验。

架构设计

项目采用前后端分离架构设计,项目地址如下:

项目 项目地址
前端 https://github.com/yuyan075500/ops-web
后端 https://github.com/yuyan075500/ops-api

后端目录说明

  • config:全局配置。
  • controller:路由规则配置和接口的入参与响应。
  • service:接口的处理逻辑。
  • dao:数据库操作。
  • model:数据库模型定义。
  • db:数据库、缓存等客户端初始化。
  • middleware:中间件层,作用于全局,如跨域、JWT认证、权限校验等。
  • utils:工具层,如Token解析,文件操作等。

后端Code状态码说明

  • 0:请求成功。
  • 90400:请求参数错误。
  • 90401:认证失败。
  • 90403:拒绝访问。
  • 90404:访问的对象或资源不存在。
  • 90500:其它错误。
  • 90514:Token过期或无效。

功能概览

认证相关

用户登录策略

✅支持,🟡敬请期待,❌不支持

用户来源 用户登录 账号同步 用户密码修改 用户信息修改(电话、邮箱) 双因素认证 单点登录 NGINX鉴权
本地
Windows AD 🟡
OpenLDAP 🟡
钉钉 🟡
企业微信 🟡
飞书 🟡

账号同步规则

无论使用哪一种用户认证方式,都需要确保本地系统中用户存在,所以当配置好Windows AD或OpenLDAP后,需要登录平台点击【用户管理】-【分组管理】-【LDAP账号同步】执行一次用户同步,用户的同步规则如下:

  1. 如果本地系统中没有,LDAP中有,则创建。
  2. 如果本地系统有,LDAP中有,则更新(仅更新用户来源为LDAP且username相同,更新手机号和邮箱字段)。

同步用户时,用户字段映射规则如下:

# OpenLDAP
{
	"name": "uid",
	"username": "cn",
	"email": "mail",
	"phone_number": "telephoneNumber"
}

# Windows AD
{
	"name": "sAMAccountName",
	"username": "cn",
	"email": "mail",
	"phone_number": "telephoneNumber",
	"is_active": "userAccountControl"
}

其它

  • 支持Swagger接口文档:访问地址:/swagger/index.html
  • 支持用户密码自助更改:访问地址:/reset_password

项目部署

参考 Docker Compose部署Kubernetes部署

项目交流

如果你对此项目感兴趣,欢迎扫描下方二维码加入微信交流群。

img

作者联系方式

WeChat:270142877。
Email:270142877@qq.com

联系时请注名来意。

About

项目主要提供系统用户统一认证服务(SSO),采用前后端分离的架构模式,支持CAS 3.0、OAuth 2.0、SAML2和OIDC协议。后端项目基于Gin + Gorm + Casbin实现,前端项目基于 Vue Admin Template 进行二次开发。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 99.8%
  • Dockerfile 0.2%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.