Alternative Authentication
Используйте сторонние серверы аутентификации, такие как Ely.by, на своём сервере, не мешая аутентификации Mojang
- Загрузчики
- FabricQuilt
- Скачиваний на Modrinth
- 7 тыс.
- Подписчиков на Modrinth
- 55
- версий
- 10
- Обновлён
- 28 марта 202628 мар.
- Опубликован
- в 2024
Коротко о моде
Ставится только на сервер; игрокам ставить не нужно
Alternative Authentication
Alternative Authentication — серверный мод, который позволяет нескольким сторонним или кастомным серверам аутентификации работать наряду с серверами Mojang. По умолчанию настроены два провайдера: Mojang и Ely.by. Вы можете свободно добавлять, удалять или менять их порядок.
Требования:
online-mode=trueвserver.properties- рекомендуется
enforce-secure-profile=false, игроки, заходящие через сторонние провайдеры, не имеют подписанных ключей чата
Только для серверной стороны. Игрокам, использующим сторонний провайдер аутентификации на клиенте, нужен совместимый лаунчер или инжектор.
Возможности
- ⚙️ Настраиваемый список провайдеров аутентификации.
- 🔐 Последовательный перебор провайдеров при входе игрока на сервер
- 🔒 Опциональная защита от отката: если имя пользователя существует у провайдера, но аутентификация не удалась, остальные провайдеры не проверяются.
- 👕 Поддержка текстур игрока (скин и плащ) через сторонние серверы скинов
- 📝 Поддержка вайтлиста для всех настроенных провайдеров
Как это работает
Вход на сервер
Когда игрок подключается, каждый настроенный провайдер проверяется по порядку, пока один из них успешно не аутентифицирует сессию. Если ни один провайдер не справился, игроку отказывают в доступе.
Если включён preventFallbackIfPlayerExists и имя пользователя игрока найдено у провайдера, но аутентификация не удалась, остальные провайдеры не проверяются. Это не даёт пользователю, зарегистрированному на резервном сервисе, выдать себя за аккаунт у более раннего провайдера.
Вайтлист
Когда игрок добавляется в вайтлист, каждый провайдер опрашивается по порядку, пока имя пользователя не будет сопоставлено с UUID. Если игрок не найден ни у одного провайдера, его нельзя добавить. Порядок проверки провайдеров определяется списком providers в конфиге.
Что если два игрока используют одно и то же имя пользователя у разных провайдеров?
По умолчанию побеждает первый провайдер, сопоставивший имя пользователя. Если вам нужно добавить в вайтлист игрока, чьё имя пользователя существует у непервичного провайдера, временно измените порядок списка providers и добавьте его вручную командой /whitelist add.
Конфигурация
Файл конфига создаётся автоматически по пути config/alternative-auth.json при первом запуске.
configVersion
Внутренняя версия схемы. Управляется модом автоматически, не редактируйте её вручную.
debugMode
Если true, во время аутентификации и операций с вайтлистом в консоль пишутся подробные логи. Полезно для отладки. По умолчанию отключено.
preventFallbackIfPlayerExists
Если true, останавливает цепочку провайдеров, когда имя пользователя найдено у текущего провайдера, но аутентификация не удалась. Предотвращает подмену имени пользователя через резервные сервисы; непиратские игроки с именами, уникальными для резервного сервиса, не затрагиваются. По умолчанию отключено.
providers
Упорядоченный список провайдеров аутентификации. Каждая запись поддерживает следующие поля:
| Поле | Обязательно | Описание |
|---|---|---|
name | ✅ | Отображаемое имя провайдера |
checkUrl | ✅ | Эндпоинт проверки сессии, запрашивается при входе игрока на сервер |
profileUrl | ✅ | Эндпоинт поиска UUID по одному имени пользователя, используется для операций с вайтлистом |
profilesUrl | ✅ | Эндпоинт пакетного поиска UUID по именам пользователей |
propertyUrl | ❌ | Эндпоинт для получения свойств игрока, таких как скин и плащ. Используйте {0} для имени пользователя и {1} для его UUID |
{
"configVersion": 1,
"debugMode": false,
"preventFallbackIfPlayerExists": false,
"providers": [
{
"name": "Mojang",
"checkUrl": "https://sessionserver.mojang.com/session/minecraft/hasJoined",
"profileUrl": "https://api.minecraftservices.com/minecraft/profile/lookup/name/",
"profilesUrl": "https://api.minecraftservices.com/minecraft/profile/lookup/bulk/byname"
},
{
"name": "Ely.by",
"checkUrl": "https://authserver.ely.by/session/hasJoined",
"profileUrl": "https://authserver.ely.by/api/users/profiles/minecraft/",
"profilesUrl": "https://authserver.ely.by/api/profiles/minecraft",
"propertyUrl": "http://skinsystem.ely.by/textures/signed/{0}"
}
]
}FAQ
В: Не могу зайти на сервер, «Invalid signature for profile public key»
О: Установи No Chat Reports на сервер. На клиенте тоже рекомендуется, но не обязательно.
В: Поддерживается ли Forge или NeoForge?
О: Поддержка NeoForge в планах.
В: Когда мод обновится до последней версии Minecraft?
О: Мод ориентирован на последний стабильный релиз и обновляется по мере возможности. Поддержка снапшотов не планируется.
В: Я нашёл баг, есть предложение или мод работает неправильно
О: Смело открывай issue на GitHub!
Частые вопросы
Как установить Alternative Authentication?
Установите Fabric под свою версию Minecraft, скачайте Alternative Authentication под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.
Для каких версий Minecraft есть Alternative Authentication?
У Alternative Authentication есть сборки для Minecraft 1.14–26.1.2.
Нужен ли Alternative Authentication на сервере?
Ставится только на сервер; игрокам ставить не нужно