0

Azure で実行されている非常に小さな ASP.NET ASHX Web サービスに取り組んでおり、保護したいと考えています。ユーザーの操作なしで機能する必要があるため、暗号化された秘密鍵をリクエストに渡すことを考えていました。しかし、念のため、そのキーを常に変更する必要があると思いました。

これまでのところ、私の考えは、クライアントとサーバーの両方で 60 秒ごとに同じ方法でキーを生成し、それをハッシュして、それをキーとして使用することです。

しかし、対処方法がわからないことに遭遇しました。60 秒ごとに変更され、クライアントが 59 秒でキーを生成し、サーバーがリクエストに応答するのに 1 秒以上かかる場合、キーは変わらず、リクエストは拒否されます。

このケースを処理する良い方法はありますか...おそらくキーは60秒ごとに変更されますが、変更後の数秒間は問題ありませんか?

サービスを保護する方法はおそらく他にもあると思いますが、クライアント側の証明書などはいくつかの理由で既に除外しました。変更しないパスワードよりもシンプルにしたかっただけです。

考え?

4

2 に答える 2

0

明らかに、HTTPs を使用してサービスを保護しています。これがステップ 1 になります。

以前のキーが短期間有効であることに言及しているため、キーを失効させたい識別/認証。サーバーは、2 つのキーのいずれかに対して認証を行います。

また、3 番目のセキュリティ手段、IP フィルタリングも追加します。これが共有の「秘密」キーを持つと私が想定している API である場合は、これにアクセスできるユーザーを制限してください。これにより、キーが公開されたり、誰かがキーをハッキング/取得した場合に悪意を持ってサイトを攻撃しようとしたりするのを防ぐことができます.

于 2013-08-30T20:07:50.353 に答える