ユーザー情報の取得メモ
ユーザー情報
System.Web.Mvc.Contoller.User.Identityで取得。
・未認証の場合:GenericIdentityクラスを返す。未認証で、認証方法やユーザー名称などは空文字列。
・認証済の場合:System.Web.Security.FormsIdentityクラスを返す。認証済みで、それぞれのプロパティ値に値が設定されている。
・未認証の場合:GenericIdentityクラスを返す。未認証で、認証方法やユーザー名称などは空文字列。
・認証済の場合:System.Web.Security.FormsIdentityクラスを返す。認証済みで、それぞれのプロパティ値に値が設定されている。
ユーザー管理
ASP.NET MVCプロジェクト作成すると、ユーザー管理関係の環境が自動的に生成される。
下記に概要を書いておく。詳しくはAccountModels.csを参照。
ユニットテストが行えるようにこのインターフェイスで抽象化しているらしい。
内部にMembershipProvider継承クラスを持つ。ユーザー管理処理はこのプロバイダーに委譲する形になる。
どのプロバイダークラスを使用するかはWeb.configに記述する。
-> configuration/system.web/membership ノード
設定値がMemberShipクラスに登録される。内部使用のメンバーシップクラスはここから取得する。
デフォルトでは、System.Web.Security.SqlMembershipProviderクラスが指定されている。
下記に概要を書いておく。詳しくはAccountModels.csを参照。
IMembershipServiceインターフェイス
自動的に生成される、ユーザー管理のインターフェイスクラス。ユニットテストが行えるようにこのインターフェイスで抽象化しているらしい。
AccountMembershipServiceクラス
自動的に生成される、IMembersipService実装クラス。内部にMembershipProvider継承クラスを持つ。ユーザー管理処理はこのプロバイダーに委譲する形になる。
どのプロバイダークラスを使用するかはWeb.configに記述する。
-> configuration/system.web/membership ノード
設定値がMemberShipクラスに登録される。内部使用のメンバーシップクラスはここから取得する。
デフォルトでは、System.Web.Security.SqlMembershipProviderクラスが指定されている。