我为3vs3 UDK游戏创建了一个配对服务。这些团队由一个C#Web Api 2后端组成,后端与UnrealScript的HttpRequestInterface进行通信。
当一个团队成立时,它的玩家会被带到一个大厅,在那里他们可以聊天,选择一个角色并准备好。这些通信是通过.NET的TcpListener和TcpClient实现的,UnrealScript使用其TcpLink类与TCP服务器进行通信。
我现在遇到有关身份验证和授权的问题。我无法确定如何安全地识别用户(他们的凭据存储在MySQL数据库中),因为UnrealScript TcpLink无法使用SSL流。让我们假设玩家首先通过网络服务进行身份验证,如何在该TCP服务器上维护(并保持安全)他们的身份?
那份工作有没有候选人? (HMAC,基于令牌?请记住,它是极低级别的TCP)。如果没有,也许我可以尝试长轮询HTTP而不是TCP套接字?或者我应该完全废弃UnrealScript前端并使用UnrealScript的DllBind将其替换为Dll?
我可能还应该说,我试图在确保网络服务方面做好自己的努力,经过大量的研究和大量的反复试验后没有取得多大的成功,所以任何有关这方面的信息都是受欢迎的。
答案 0 :(得分:0)
对于仍然想知道我刚刚切换到长轮询服务器并通过HTTPS使用JWT tokens的人。虽然它有与长轮询相关的问题,但当你的前端是UDK时似乎是一个很好的折衷方案。