1

私は非常に高いセキュリティを必要とするWebアプリケーションを開発しています-要件の1つは、アクセスを取得するためにパスワードと2番目の要素が必要になることです-たとえば。トークン、指紋スキャナー、磁気カードなど。

私の質問は次のとおりです。Webブラウザがカードリーダーや指紋スキャナーなどのデバイスからデータにアクセスし、ログインプロセス中に送信するための適切な方法はありますか?Javaアプレット、ブラウザプラグイン?他に何かありますか?またはトークンは唯一のオプションですか?

編集:クライアントとサーバーが証明書を交換する双方向の証明書認証について何かを見つけました-クライアント証明書はスマートカードで保護される可能性があるため、ユーザーはログインプロセス中にそれをリーダーに配置する必要があります。多分誰かがそれについてもっと何か知っていますか?

4

4 に答える 4

1

ネイティブブラウザプラグインまたはActiveXコントロール(IEの場合)の作成で立ち往生している外部ハードウェアと対話することを恐れています。ただし、一部の磁気カードリーダーは、実際にはキーボードのように動作します(つまり、カードから読み取ったデータを「入力」し、その後に\ nなどの制御文字を入力します)。純粋なJS以外を使用せずにリーダーの入力をキャプチャします。

于 2011-04-27T22:31:52.293 に答える
1

Webアプリケーションの場合、携帯電話の使用をお勧めします。ユーザーがログインしようとすると、パスワードに加えて入力する必要のあるテキストメッセージが表示されます。

手頃な料金でシンプルなRESTAPIを介してテキストメッセージを送信するサービスプロバイダーは数多くあります。セキュリティが大きな懸念事項である場合、追加コストは大きな問題にはならないはずです。

于 2011-04-27T22:41:54.870 に答える
1

私はいくつかの提案があります:

  • 一部の銀行と同じように、入金に必要な情報を含むファイルをクライアントに提供します。次に、ファイルを暗号化して、そのハッシュを確認します。(おそらくsha1とmd5の両方?)ここでの唯一の懸念はファイルの盗難です。
  • Steamからインスピレーションを得て、ユーザーが新しいコンピューター(および/またはブラウザーおよび/またはIP)からログオンするたびに確認メールを送信します。
  • また、事前定義されたキーのリストを(メール、電子メール、または直接)ユーザーに提供し、ユーザーがログオンする必要があるときはいつでも、ランダムなキーを要求し、使用された場合はシステムで破棄することができます。 。欠点は、使い果たされたときに新しいリストを配布する必要があることです。(私はこのようなシステムが非常にうまく機能するのを見たことがあります。)

これがインスピレーションになることを願っています。

于 2011-04-27T23:16:51.107 に答える
0

あなたが考えるかもしれない一つのことは、WorldofWarcraftのためのブリザードのオーセンティケーターに似た何かを実装することです。これは、60秒ごとに変更され、特定のシリアル番号に関連付けられている8桁のコードです。シリアルをユーザーアカウントレコードとともに保存し、それと現在の時刻に基づいて予想されるコードを計算します。これは、意欲的なハッカーの真の軍隊に対抗するシステムであるため、少なくともかなり安全です。

主な利点は、ハードウェアと直接インターフェースする必要がなく、ユーザーがどこからでも認証できることです。欠点は、物理的なハードウェアをチェックする場合と同じような安心感がないことです。

于 2011-04-27T23:10:50.253 に答える