Yggdrasil Scaffold for Authlib-injector
Project description
Yggdrasil Scaffold for Authlib-injector
基于 FastAPI 的 Yggdrasil 身份验证协议实现脚手架。
Yggdrasil 是 Minecraft 中身份验证服务的实现名称。
使用方式
安装
pip install yggdrasil-scaffold
详细的文档还没有写。但是这里有些资料:
可用资源
-
test
目录下有一些样例,模块内部有中文 docstring 和一些注释,暂时可供参考。 -
CONTRIBUTING.md
中有本项目的术语表 -
关于 Yggdrasil API 的更多信息可参见 此文章
实现速查
如果你打算将本项目用于 Authlib-injector,那么下表列出了你需要实现的端点:
端点类型 | 客户端 | 服务端 |
---|---|---|
用户 | / | / |
会话 | join |
hasJoined |
查询 | from_name_batch |
from_name_batch |
材质管理 | / | / |
元数据 | 多人游戏时,同时需要home 和sign_key |
sign_key |
注: Mojang 的身份认证库 Authlib 的一些早期版本包含对用户端点的调用,但最新版本中已移除。 我不确定用户端点是否在某些版本的游戏上有用,抑或是本就只在 Minecraft 启动器上可用。
游戏只会在”需要从玩家名获取 UUID“时才会访问查询端点。其它时候会从 usercache.json
或者类似的地方获取。
客户端进行多人游戏时,会访问元数据端点来验证材质签名。
如果你打算将本项目用于服务启动器,那么最好实现除hasJoined
以外的全部端点,启动器很可能会用到它们。
警告
Yggdrasil Scaffold 并非被设计用于高并发或安全性要求高的用途,且未经严格测试。请谨慎在生产环境使用。
另请参阅
ADOFAI 是一组数据模型和配套工具,旨在简化自定义实现 Authlib-injector 的规范 Yggdrasil 服务端、客户端及其配套程序的过程。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for yggdrasil_scaffold-0.1.0.dev2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1b66d95111ba92e4ddf07d411b64f684aee3f3a519d00355293c898b007222fb |
|
MD5 | 99c24e55ef9e0bb9660ca2a1ef3c1f18 |
|
BLAKE2b-256 | 3ab8d85272a67b121596c269e80ae3c86667193d1d0f608b90744b752ef8946b |
Hashes for yggdrasil_scaffold-0.1.0.dev2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 40566bb8bd82583f6679b860b0576430eca888aded26efa234f781ec49df7784 |
|
MD5 | 7702ecf1e92b6020e6411d2ae9b7236d |
|
BLAKE2b-256 | f4847a0ecb02c26c5e474a6e7042092fd8c4fff79db443da13a9b94a875180b6 |