2017-08-17 13 views
4

私は、特にSteamアプリケーションの認証を使用するnode.jsを使用して個人用プログラムを作成しています。ログインは外部の.txtファイルからユーザー名とパスワードを読み取り、配列の位置を使用して ':'(コロン)で区切って動作します。ここで私は助けが必要です。いくつかのアカウントでは、Steamは2つの要素のコードを使用しています。これらのコードは、モバイルアプリまたは電子メールで時間によってランダムに生成されます。現時点では、私は自分のプログラムを持っていますので、アカウントに認証コードが有効かどうかを確認し、認証コードが有効ならば、適切な2つの要素コードを手動で入力するよう促します。私は、この認証コードを取得してユーザに手作業をさせることなくそれを置くために私のプログラムを組み込む方法があることを知っていますが、どこから起動するのかはわかりません。Node.js 2因子認証

問題:ランダムに生成されたコードをプルして手動で何もせずに自動的に設定するようにします。次のように

コードは次のとおりです。

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(); 
} 

ありがとうございました。

答えて

1

2因子認証(2FA)は、リソースに2つの個の別々のファクタで許可されている原則です。 1.あなたが知っているもの(ログイン/パス)2.あなたが持っているもの(Google Authenticator、Authyのような2FAアプリがインストールされている電話、またSteam製のアプリがあると思う)

あなたが正しく理解していれば、パスワードと2FAの詳細をアプリに保存したいと思っています。おそらくそれを行う技術的な方法がありますが、そのようなアプリは使用しません。これは大したセキュリティではありません。毎回あなたのアプリのユーザにログイン/パスワードを提供するように頼んで、Steam APIが第2の要因を求めたら、ユーザーにそれを尋ねてください。

私はほとんどのAPIを見てきましたが、特別なトークンを手に入れることができたので、パスワードなどを保存せずに毎回ログインしてコードを提供する必要はありません。 (公式のSteam APIを使用していないのではないが、おそらくあなたが行うコードの形をしていない限り)

+0

このプログラムは、実際には.txtドキュメントからユーザー名とパスワードを読み取るループでいくつかのアカウントにログインします.txt内に2つの要素の認証を有効にした1つまたは多分複数のアカウントが存在する可能性があります。今私は私のプログラムがこれを認めて、ユーザーが手動でこれを入れさせるように質問しますが、私が望むのは、自分のプログラムが有効になっている任意のアカウントの2つの要素コードを引き出し、自動的にコードを入力することです。しかし、アカウントの特別なトークンを見つけようとは考えなかったというコメントをいただきありがとうございます。 –

+0

OTP https://security.stackexchange.com/a/47904/18504でこのトピックをチェックしてください。シードデータを手に入れることができると仮定すると、あなたが望むように見えます(私は専門家ではありませんが、これは2FAを設定するときに表示されるQRコードだと推測されます。 – meta

関連する問題