0

Web サービスを使用して相互に統合する必要がある 2 つのシステム (A & B) があるため、次のセキュリティ メカニズムを実装することを考えています。

  1. システム B は、ユーザー名とパスワードを含む要求をシステム A に送信し、64 文字のワンタイム パスワードを要求します。

  2. システム A は、64 文字を含むワンタイム パスワードをシステム B に送信します。

  3. システム B は、64 文字のパスワードを使用してシステム A の Web サービスを呼び出します。

  4. システム A は、64 文字のパスワードが有効かどうかをチェックします。

  5. システム A はシステム B の要求に応答します。

  6. システム A は有効なパスワードから 64 パスワードを削除します (そのため、システム B または別のシステムが以前に生成された 64 文字のパスワードを使用してシステム A の Web サービスを呼び出した場合、呼び出しは失敗します)。

  7. システム A は新しい 64 文字のパスワードを生成し、必要に応じてシステム B に送信します。

  8. システム B は、新しい 64 パスワードを使用してシステム A の Web サービスを呼び出します。

したがって、私の質問は、2つのシステム間の通信をhttpsの下に実装することを念頭に置いて、このアプローチが安全であることです。よろしくお願いします

4

1 に答える 1

1

考慮に入れる必要がある多くのセキュリティ上の考慮事項があります。それでは始めましょう:

  • 両方のシステムは公的にアクセス可能ですか?
  • 両方のシステム WS はパブリックにアクセスできますか?
  • 暗号化を実装しますか? トランスポートまたはアクセス制御で?

私が言えることから、あなたのシステムのWSは公的にアクセス可能ではなく、プロキシが制御の追加レイヤーとしてある種の証明書認証と、クライアントシステムのIP範囲を制限するための何らかの形式のアクセス制御リストを組み込んでいると思います.

2 つ目は、おそらく暗号化ではなく何らかのアクセス制御を行いたいということです。つまり、ユーザーAはドキュメントaaabを表示でき、システム A はそれらのルールを知っていますが、システム B は知っていませんが、実際のデータを保持しています。

プロトコルの分析 システム A がシステム B に対して認証し、有効な OTP を取得する場合、考慮すべき点がいくつかあります。

  • そのような otp の有効期間は何ですか?
  • どのように一意性を提供しますか?
  • それらは文脈に依存しますか?

平均的なユーザーよりも多くのユーザーがデータ識別子を置き換え、有効な OPT アクセスを使用して、すべきでないものにアクセスすることを望まないため、これらすべてが必要です。セキュリティは滑りやすい題材です。Ross Anderson による Security Engineering と、Dieter Gollman による Computer Security を手始めとしてお勧めします :)。

于 2012-11-26T18:38:41.053 に答える