校园统一身份认证插件,支持三种登录方式,适用于各高校部署(默认配置针对华东理工大学)。
把本仓库克隆到 Blessing Skin 的 plugins/auth-eduroam 目录(目录名需与 package.json 中的 name 一致),后台启用即可。
cd plugins
git clone https://cnb.cool/ecustmc/auth-eduroam auth-eduroam| 方式 | 说明 | 输入格式 |
|---|---|---|
| 官方认证 | AnyShare 网盘 API(一般是官方认证账户密码,根据自己学校情况来),RSA 加密密码 | 学号/工号 |
| 邮箱登录 | 企业邮箱 SMTP 验证 | 完整邮箱 |
| Eduroam(不推荐) | eduroam 服务器验证,支持中科大 / 西安科技大学 / eduroam.edu.cn 官方多接口回退(后台可多选、可排序、可配置接口域名以适配反代/内网/IPv6 部署) | 学号/工号 |
在后台配置页可设置以下项。注意:认证渠道默认全部关闭,且各配置项的默认值为华东理工大学的示例配置,其他高校请务必按本校实际情况修改后再保存,否则可能出现凭据发送到示例服务器或注册邮箱错误等问题:
- 认证渠道开关:官方认证 / 邮箱登录 / Eduroam 分别启用或禁用
- Eduroam 验证接口:勾选启用的接口并调整验证顺序;各接口域名可覆盖(反代 / 内网 / IPv6 部署)
- Eduroam 认证域名:通过 eduroam 验证时追加在识别号后的邮箱域名
- 邮箱规则:「识别号长度 → 邮箱域名」的有序规则,长度留空表示任意长度(兜底)。例如华东理工大学:
5→ecust.edu.cn(教职工),兜底 →mail.ecust.edu.cn(学生) - 邮箱 SMTP 设置:SMTP 服务器、端口、加密方式(SSL / STARTTLS / 无加密)、允许登录的邮箱域名白名单(每行一个)
- 官方认证接口设置:统一认证接口地址(如
https://pan.example.edu.cn/api/v1)与 RSA 公钥(PEM 文本,留空则使用插件自带的public_key.pem) - 代理设置:访问官方认证接口与 eduroam 验证接口的 HTTP/SOCKS5 代理
- 在校状态联动:配合「在校状态校验」插件,注册时自动完成在校认证
- Blessing Skin Server >= 6
- PHPMailer(Blessing Skin 自带)
├── bootstrap.php # 插件入口
├── package.json # 插件元信息
├── public_key.pem # RSA 公钥(默认,可被后台配置覆盖)
├── src/
│ ├── LoginController.php # 登录控制器
│ ├── EcustAuth.php # 官方认证服务
│ └── Configuration.php # 后台配置页
├── views/ # Twig 模板
└── lang/ # 语言包
本项目基于 MIT License 开源。