Node.js双因素身份验证

我正在使用node.js开发个人程序,该程序专门为Steam应用程序使用身份验证.登录从外部.txt文件读取用户名和密码,它使用数组定位工作,由’:'(冒号)拆分.现在这是我需要帮助的地方.对于某些帐户,Steam使用双因素代码,该代码是在移动应用或电子邮件中按时间随机生成的.这时,我有我的程序,所以它检查帐户是否启用了身份验证代码,如果有,我提示手动输入适当的双因素代码.我知道有一种方法可以合并我的程序来提取这个身份验证代码并将其放入,而无需用户手动执行,但我不知道从哪里开始.

问题:我希望程序提取随机生成的代码并自动设置它而无需手动执行任何操作.

代码如下:

else if (eresult === Steam.EResult.AccountLoginDeniedNeedTwoFactor)
 {
    login.two_factor_code = readline.question(`[${param[0]}] Mobile auth code: `);
    client.disconnect();
    client.connect();
      }
else if (eresult === Steam.EResult.AccountLogonDenied) 
{
   login.auth_code = readline.question(`[${param[0]}] Steam Guard code: `);
   client.disconnect();
   client.connect();
}

谢谢.

最佳答案 双因素身份验证(2FA)是您通过两个独立因素授权资源的原则. 1.你知道的东西(登录/通过)2.你拥有的东西(安装了2FA应用程序的手机,如谷歌身份验证器,Authy,我认为这是由Steam制作的应用程序).

如果我理解正确 – 您希望在应用中存储密码和2FA详细信息.可能有技术方法,但我不会使用这样的应用程序.这是一个很大的安全禁忌.最好每次都要求您的应用用户提供登录/密码,如果Steam API要求第二个因素 – 请用户询问.

正如我所看到的大多数API – 您可能会获得一个特殊的令牌,因此用户无需登录并每次都提供代码而无需存储密码等.挖掘文档 – 您将找到它. (除非您不使用任何官方Steam API,但它看起来形成您可能执行的代码)

点赞