web-dev-qa-db-ja.com

ユーザー招待リンク(トークン)はいつ期限切れになりますか?

外部ユーザーをID管理システムに招待できるシステムがあります。ユーザーは弊社の社員ではなくお客様です。顧客の管理者は、ユーザーが招待されているシステムにアクセスできません。

現在、7日間有効なリンクを含むユーザーのメールアドレスに招待メールを送信しています。問題は、たとえば休日であるために、すべてのユーザーが7日以内にそのメールに応答することができない、または応答したくないということです。

これにより、ユーザーに手動で「再発行」する招待メールが送信されますが、これは大変な作業です。上記のように、顧客管理者はシステムにアクセスできないため、これは従業員が行います。この手作業による介入を最小限にしたいのですが、提案した対策がセキュリティの観点から良いアイデアであるかどうかはわかりません。 ユーザーの招待について具体的に質問します。この場合、ユーザーは自分で招待を開始せず、招待がいつ発生するかを制御できません。助けてもらえますか?

  • ユーザー招待リンクに有効期限を設ける必要がありますか。有効期限が切れる場合、有効期限はどのくらいですか。
  • たとえば、新しい招待リンクを含む別のメールを送信するなどして、ユーザーがすでに期限切れになっている招待をクリックした場合、ユーザーが招待を「延長」できるようにするとよいでしょうか?
8

ユーザーの招待リンクに有効期限を設ける必要があります-有効期限が切れる場合、有効期限はどのくらいですか?

それは一般的な答えのない質問です。それは、保護しているリソースの価値、招待状を受け取っている人、これらの招待状を送信するために使用しているチャネルの安全性と脅威に依存します保護しようとしています。

ただし、一般的に言えば、有効期限のない招待状はあまり望ましいプロパティではありません。ほとんどの場合、招待状が発行されてから10年後に誰かが招待を受け入れることはあまり意味がありませんが、(わずかな)セキュリティリスクが生じます非常に古いが、まだアクティブな招待状は、キースペース全体に対する有効なキースペースのサイズを大きくするという意味で。つまり、攻撃者はすべての潜在的なキーを試し、有効なキーを見つける可能性が高くなります。

ユーザーに招待を「延長」させることをお勧めします

これが望ましい機能となるシナリオは考えられません。これは、招待者の無期限の有効期間と実質的に同じですが、すべての人(開発者とユーザー)にとってより複雑です。

7
Stephane

営業日のみをカウントすることを検討してください

休暇や休日が心配な場合は、週末や休日をカウントから除外することを検討してください。ユーザーがさまざまな国に分散している場合、これは難しいかもしれませんが、標準日ではなく営業日をカウントすることには価値があると思います。

10営業日は3週間です。これは、休暇を回避するのに非常に適しているはずです(ヨーロッパの大きな休暇について話しているのでない限り)。このポリシーとメールでの日数のカウント方法を詳しく説明するのではなく、期限が切れるタイミングを伝えてください。招待状を送信するユーザーの場合、システムは12日以上をサポートしていると言います(少なくとも営業日ではないことが保証されているため)。

それでも Stephaneが述べたように 、適切な時間についての標準的な答えはありません。それはユーザーに依存します。営業日を数えるのが面倒すぎる場合は、より大きな数を選択してください。

有効期限を延長することの長所と短所を比較検討します。

  • 制限しようとしているセキュリティリスクはありますか?
  • あまりにも長く待つのは他のユーザーに不公平ですか?

非常に長い期間はしないことを強くお勧めします。上限として、20営業日または30暦日は私にはいいと思います。その長い間休暇を取っている人は、トークンのウィンドウがほとんどないことについて不平を言うことはありません(新しいトークンを要求するだけです)。

招待を「延長する」ことは私には無意味です。

  • 新しい招待状の非公式な問い合わせで十分です
  • 虐待が心配な場合は可能であることを宣伝しないでください
4
Adam Katz