0

私はasp.netアプリケーションに取り組んでいます。

システム管理者がユーザー固有のドキュメントを表示するための招待状を電子メールで送信できるようにする機能に取り組む必要があります。ユーザーが招待状をクリックすると、システムはユーザーを認識してドキュメントを開くことができる必要があります。

各メールに対して 16 桁のハッシュ キーを使用し、管理者が招待状を送信するときにデータベースに保存することを考えています。ユーザーが招待状をクリックすると、16 桁のハッシュ キーを使用してユーザーの詳細が取得されます。

しかし、私はそれを行うためのより良い方法があるかもしれないと感じています.

より良い方法で機能を実装することを提案してください。

4

2 に答える 2

0

ユーザーが通常ログインする必要がある場合は、ドキュメントを開く前 (または他の質問に答える前) に電子メールのリンクをクリックした後、強制的にログインさせることもできます。少なくとも、ドキュメントを開いた後、または一定の時間が経過したら、キーを無効にする必要があります。

電子メール アカウントは常にハッキングされており、攻撃者が同じリンクをクリックして機密データにアクセスできるようにしたくありません。

于 2012-04-19T19:07:11.587 に答える
0

データベースで、次を含むテーブルを作成します

UserDocuments { UserKey, DocumentKey, GUID, IsRead (false by default)} 

ユーザーとドキュメント キーの関係をこのテーブルに格納します。

ランダムな公開キー (GUID) を生成し、このキーをこのテーブルに保存し、電子メール、メール、電話、または直接安全な方法を使用して同じキーをユーザーに送信します。

ドキュメント ページのクエリ文字列に DocumentKey を含めます。

ユーザーがドキュメント ページを開くと、テーブル内の DocumentKey、UserKey に対してユーザーを認証します。

IsRead が false の場合は許可しません。

認証が成功した場合は、GUID の入力を求めます。

ユーザー ID が有効かどうかを再度データベースで確認し、有効な場合はドキュメントを開き、IsRead を true にマークします。

于 2012-04-19T19:22:12.190 に答える