C++ 和 C# 之间的令牌登录
Token Login Between C++ and C#?
这就是我要做的。我有一个 C# 的 asp .net 网站。我还有一个游戏服务器和游戏都是用C++写的。游戏服务器托管在网站所在的位置。
我想要的是让用户在点击游戏中的按钮时能够自动登录网站。也就是说,游戏向游戏服务器发出请求,以及一些如何生成可用于登录网站的令牌。
因此,服务器可能会发回类似以下内容:
www.contoso.com/tokenlogin?userid=67456353&token=576434324431fgdsastr
我知道一个简单的解决方案是在数据库中创建一个网站可以读取的令牌。如果我找不到更好的解决方案,我会这样做,但理想情况下,我想生成一个令牌,在接下来的 5 分钟内,使用此用户 ID 传递此令牌将登录该用户,就好像他们已经传递了密码一样。
我对此的一个简单想法是散列他们的密码哈希和用户名,这将起作用,但这没有时间戳。
有人对此有任何建议吗?MySQL 可以生成可以验证的令牌吗?我正在使用MySQL。我不介意使用数据库的解决方案,我只是不想要写入数据库的解决方案。
谢谢
生成随机令牌并将其保存到数据库(带有时间戳)绝对是最简单的解决方案。 如果失败(或进程之间的另一种通信方式),您可以做的是在服务器中生成签名令牌,这些令牌可以由您的 Web 应用程序进行验证。 因此,您的服务器将创建一个令牌,例如:
{userid: XXX, issueTime: YYY}
然后,使用经过身份验证的加密方法(如 GCM)加密此数据,对其进行 base-64 编码,并将其附加到 URL。 Web 应用解密并验证数据,如果时间戳正常,则让用户登录。 这需要在进程之间共享密钥,您不能丢失该密钥。
相关文章:
- 如何在C++中使用X509证书模在令牌中查找私钥
- holeMenuProgram.cpp:38:1 错误:'}'令牌之前的预期主表达式
- C++:"("令牌"之前有预期的非限定 id 指向类中成员函数的指针
- Arduino 用于语句错误。令牌之前的预期')' ';'。如何解决这个问题?
- 错误:令牌 { '{' 之前应存在非限定 ID
- 允许哪些令牌作为 #include 的参数?
- "错误 C0000:语法错误,令牌"<EOF>"处出现意外$end,并且不确定
- 它在 { 令牌之前给了我预期的标识符
- (错误:令牌之前'<<'预期的主表达式)
- 为什么 ## aka 令牌粘贴运算符不适用于 C 和 C++ 中的注释?
- 错误:"->"令牌之前的预期初始值设定项
- LINUX 操作系统上的错误:令牌之前预期的构造函数、析构函数或类型转换'('?
- 丢失读入的每一行输入中的最后一个令牌
- 如何使用 libCurl 将访问令牌发送到服务器 API
- C++令牌定义成员
- 宏定义中的预处理器令牌两边有两个双引号
- C++ 和 C# 之间的令牌登录
- 基于令牌的网站登录
- 如何判断进程的用户令牌是否与运行进程的登录会话令牌相同?
- 如果使用system用户令牌启动登录用户进程,是否会危及系统安全