使用 UnrealScript 前端的 C# WebApi 身份验证和授权

C# WebApi authentication and authorization with UnrealScript frontend

我为 3vs3 UDK 游戏创建了配对服务。这些团队由一个 C# Web Api 2 后端组成,它与 UnrealScript 的 HttpRequestInterface 进行通信。

当一个团队成立后,其球员会被带到一个大厅,在那里他们可以聊天、选择角色并做好准备。这些通信是通过 .NET 的 TcpListener 和 TcpClient 实现的,UnrealScript 使用其 TcpLink class.

与 TCP 服务器对话

我现在在身份验证和授权方面遇到问题。我在弄清楚如何安全地识别用户时遇到问题(他们的凭据存储在 MySQL 数据库中),因为 UnrealScript TcpLink 无法使用 SSL 流。让我们假设玩家首先通过网络服务进行身份验证,我如何在该 TCP 服务器上维护(并确保安全)他们的身份?

那份工作有应聘者吗? (HMAC,基于令牌?请记住,它是极低级别的 TCP)。如果有 none,也许我可以尝试使用长轮询 HTTP 而不是 TCP 套接字?或者我应该完全废弃 UnrealScript 前端并使用 UnrealScript 的 DllBind 将其替换为 Dll?

我可能还应该说,我试图锻炼自己,只保护 web 服务,但经过大量研究和反复试验后没有取得太大成功,因此欢迎提供有关这方面的任何信息。

对于仍然想知道我刚刚切换到长轮询服务器并通过 HTTPS 使用 JWT tokens 的任何人。虽然它有其与长轮询相关的问题,但当您的前端是 UDK 时,它似乎是一个很好的折衷方案。