Janus 是 Blessing Skin Server 的外挂 Yggdrasil Connect 服务端,基于 NestJS 框架和 oidc-provider 库编写。
由于 Laravel 框架缺乏合适的 OpenID Connect 服务端扩展包,故采取这种外挂 OpenID Connect 服务端的方式为 Blessing Skin Server 实现 Yggdrasil Connect。
Janus 需要与 Blessing Skin Server 使用同一个 MySQL/MariaDB 数据库。不支持 PostgreSQL 和 SQLite 数据库。
- Node.js >= 22.12.0
- Blessing Skin Server >= 6
- 需要安装 Yggdrasil Connect 插件,可在插件市场中下载
- 该插件不需要也不可以与原版 Yggdrasil API 插件同时启用,但插件数据可以通用
- 在安装完该插件后,请务必阅读该插件的 README,了解如何配置该插件
- 需要安装 Yggdrasil Connect 插件,可在插件市场中下载
请查看 Wiki - 部署指南。
Janus 不是 开箱即用的,需要手动构建。部署 Janus 并不难,但最好有一定的运维经验。
应用无需进行特殊设置,即可使用 Janus 通过 Authorization Code Grant 配合 Client Secret 获取 Access Token 和 ID Token。
但若要使用 Device Authorization Grant 等公共客户端使用的授权方式,则需要在应用设置中为应用启用公共客户端支持。请查看 Wiki - 为应用启用公共客户端支持。
Copyright 2025-present Blessing Skin Team. All rights reserved. Open source under the MIT license.
Disclaimer:某站产品经理自己写代码的原则就是代码和人有一个能跑就行,自然有些代码很粗糙很难看很低效。如果你看着哪里的代码不爽,欢迎直接重构并 PR。