2017-11-07 3 views
0

どのように動作するのか理解するのに助けが必要ですか?我々は、2者間の時間変動に対処するためにクロックスキューを定義する。しかし、私の混乱は、ある クロックスキューとトークン

  1. 我々は
  2. トークンを検証することができます
  3. トークントークンなどのトークン作成の時間と有効期限内のすべての情報が

それでは、なぜサーバー上に作成されてい

クロックスキューが必要ですか?誰も私にどのように動作し、どのシナリオでそれが問題を引き起こし、助けになるかの例を教えてくれますか?

ありがとうございます。

+0

正しいタイムゾーンを設定する代わりにコンピュータ時計を調整するユーザーを保証するためにセットアップする必要がありました(DST開始時、DSTフラグまたは正しいタイムゾーンを使用する代わりに時間を+1に変更するなど) Webサイトには、コンピュータのUTCタイムスタンプが間違っていてブラウザがトークンを常に期限切れにしてしまうため、ブラウザのトークン検証に影響します。 – Luizgrs

答えて

0

短命のアクセストークンを考慮してください。サーバーに要求を行うと、サーバーは自分のトークンが期限切れになっているかどうかをチェックします。トークンが作成された時点を知っていて、それが今の時を知っていることをどのように確認するのですか。ほとんどのアクセストークンは1時間後に期限切れになりますが、実際に認証サーバーにどのように設定されたかによって異なります。トークンが作成されてから1時間以上経過した場合、そのトークンが通知されます。このため、サーバーがNTPと同期するようにします。

まずクロックスキューとは何かを考えてみましょう。 2つの認証サーバーがある場合はどうなりますか?彼らが同じ時間を持つことをどうやって知っていますか?彼らが実際に数分遅れるとどうなるでしょう。 1つのサーバーは、トークンが期限切れであり、もう1つは失効していると返します。あなたが中小企業であれば、これはおそらく重要ではありません。

あなたが世界中のサーバーを持つ大きな検索エンジン会社である場合は、今考えてみましょう。 2016年の秋と夏時間が始まると言いましょう。今では、いくつかのサーバーが一度に稼働し、他のサーバーは別のサーバーで稼動しています。たぶん多分一部の国が夏時間を開始しブームを起こすときに変更することを決めたのかもしれません。 免責事項私は、検索エンジン会社のために働いていません。私はちょうどこれが起こるのを見て、これは何が起こったのか私の理論です。

クロックスキューが必要なのはなぜですか。

あなたはそれを必要としませんが、2つの認証サーバーがあれば、それを持つことができます。だからおそらくそれに対処するべきです。 https://softwareengineering.stackexchange.com/a/245182/160992

+1

良い答えですが、クロックスキューは同じマシンでも起こります。私はIdentityServer4と、同じマシン上の両方のIdentityServerを使用しているデスクトップアプリケーションを持っていました。 IS4はlocalhostにありました。トークンはセットアップごとに期限切れではありませんでした。クロックスキュー設定を追加すると修正されました!このシナリオで何かアドバイスをしていただけますか? – newbeedeveloper

+0

私はそれが同じマシンで起こるのを見たことがない申し訳ありません – DaImTo

関連する問題