Пилим игру - Королество linux.org.ru - Королевство linux.org.ru
Хотелось бы сделать в ней авторизацию через аккаунты на лоре. Не являюсь специалистом по Java и потому прошу помощи: есть следующая задумка, как это реализовать минимальными усилиями.
- При входе в игру на клиентской стороне предлагается ввести логин с лора и некий auth-token (скрин).
- Введя логин, токен и нажав кнопку «Авторизоваться» логин и токен шлются на сервер.
- Сервер же шлет запрос на linux.org.ru с логином и токеном и лор отвечает, соответствует ли этот токен указанному логину.
- Если соответствует, то сервер логинит юзера, считая, что игрок действительно тот, за кого себя выдает. Если не соответствует, то выводится ошибка.
-
Предлагается сделать токен по следующей формуле:
, чтобы минимизировать вероятность его угадывания на основании открытых данных юзера.
$token = sha512(score + sha512(password_hash))
-
Запрос, который шлет сервер на этапе №3 можно описать так:
, на что лор может вернуть либо код 200, либо 403.
https://www.linux.org.ru/api/validate-kol-token?login=bk_&token=aaabbbccc
-
Соответственно, сам юзер на клиенте берет токен, залогинившись на лор и перейдя по ссылке
, на что лор вернет токен. Юзер этот токен скопипастит в игру и нажмет «Авторизоваться».
https://www.linux.org.ru/api/get-kol-token
БД менять не надо, все сводится к добавлению двух обработчиков.
Товарищи, кто может помочь запилить это?