1

Webアプリのユーザーを認証するカスタムSTSがあるとしましょう。このSTSには、ユーザーID、名前、電子メールアドレスなどのデータもあります。私は次の状況にあります:

STSを使用するアプリケーションがあります。このアプリケーションでは、ユーザーはレコードを作成でき、プロパティの1つはユーザーIDで満たされた「作成者」になります。このレコードを検索する場合は、ユーザーIDではなく本名を表示したいと思います。だから私はどういうわけかユーザーIDから本名への関係を維持する必要があります。

問題:アプリケーションのデータベースにユーザーIDしかありませんが、特定のユーザーの詳細を表示したいと思います。これを行うための最良の方法は何ですか?STSにメソッドを追加することを考えました。これにより、追加のユーザーデータをクエリできますが、画面に50個のレコードを表示する必要がある場合は、すべて異なるユーザーIDを使用するので非常に時間がかかります。もう1つの解決策は、ユーザーデータを含むテーブルをアプリに保持することです。'ユーザー'が私のアプリで初めて使用されるときに、ユーザーがこのテーブルに追加されます。しかし、このテーブルをいつどのように同期しますか?

私はソリューション2を好み、毎晩データを同期するだけだと思います。

皆さんはどう思いますか?

4

1 に答える 1

2

データベースのスキーマを変更できますか?

可能であれば、STSから名前やその他のユーザープロパティ情報を取得し、それを自分の側(ユーザーデータベースまたは関連するレコードなど)に保存することができます。これは、クエリと表示のみの「参照」データとして扱い、編集は許可されません。

ユーザーが認証する(そしてこれらすべての主張を含むトークンを提示する)たびに、データベースの情報を更新するだけです。これを機能させるには、ユーザーの永続的な信頼できるハンドルとして使用できる、適切な一意のID(ユーザーID?)が必要です。

于 2011-02-24T01:08:02.980 に答える