Files
oidc-server/.cursor/rules/project-structure.mdc

46 lines
1.2 KiB
Plaintext

---
description:
globs:
alwaysApply: false
---
# OIDC/OAuth2 服务器项目结构
这是一个基于 Go 语言实现的 OIDC/OAuth2 认证服务器。
## 核心组件
### 主要入口
- [main.go](mdc:main.go) - 应用程序的主入口点,负责初始化和启动服务器
### 关键目录
- **handlers/** - HTTP 请求处理器
- [handlers/admin_handler.go](mdc:handlers/admin_handler.go) - 管理员相关功能处理
- **services/** - 业务逻辑层
- **models/** - 数据模型定义
- **middleware/** - HTTP 中间件
- **config/** - 配置文件
- **templates/** - HTML 模板文件
- **utils/** - 通用工具函数
## 主要功能模块
### 管理员功能
管理员模块提供以下功能:
- 用户管理(创建、编辑、删除、列表)
- 客户端应用管理
- 管理员登录认证
### 认证流程
实现了标准的 OAuth2 和 OpenID Connect 认证流程:
- 授权码模式
- 密码模式
- 客户端凭证模式
- 隐式授权模式
## 开发指南
- 新增 API 端点应在 handlers/ 目录下创建对应的处理器
- 业务逻辑应放在 services/ 目录下
- 所有数据库模型定义应放在 models/ 目录下
- 通用的中间件应放在 middleware/ 目录下