現在、クレーム ベースの認証を検討しており、WIF を使用してカスタム STS をテストしています。
クレームをデータベースに保存する方法について説明してきました。多くの単純な例では、クレームは User への FK を持つ単一のテーブル (UserProfile など) に単純な属性として格納されます。次に、クレームが生成されます。クレーム タイプは URL と列名 (たとえば、http://.../claims/email ) であり、値はもちろんデータベースからの値です。
しかし、もっと複雑な例が必要です。クレームをデータベースに保存する方法をいくつか教えていただけますか? すべてのクレーム タイプを含むテーブルと、各ユーザーの値を含むテーブル (ユーザーへの FK を含む) のようなものを考えていました。しかし、ここでは本当にインスピレーションが必要です。そのため、共有できるものは何でも大歓迎です。しかし、繰り返しになりますが、これは非常に「フラットな」構造です...
アップデート
簡単なモデルを作ってみました: http://imageshack.us/photo/my-images/690/suggestionn.png/
申し訳ありませんが、まだ画像を投稿できません。
これは単純な主張に適していると思います。しかし、私が「ネストされたクレーム」と呼んでいるものがあるとしたらどうでしょう。クレーム タイプが、クレーム タイプ "ドキュメント" のリソース "人員" に対するユーザーの権利を説明するクレームをユーザーが持っていることを示しているとします。それはそのモデルを使用して説明できますが、その主張をさらに説明したい場合はどうでしょう。ユーザーがリソース「Personnel」へのアクセスレベル 5 を持っているとします。それがどのように可能かわかりません。何か案は?