カスタム メンバシッププロバイダ

 

自前のDBでユーザ管理を行うため、ユーザの認証管理を行うメンバシッププロバイダを自作してみました。

 

手順としてはこんな感じです。

  1. MembershipProviderを継承したクラスを作成
  2. Web.configで作成したクラスの呼び出し設定

また、以下のマイクロソフトのサイトを参考にしています。

サンプル メンバシップ プロバイダの実装

 

メンバシッププロバイダクラスは以下のような内容です。

今回は単純なユーザ名、パスワード、ユーザID(自動采番)を持ったACCOUNTテーブルで管理する想定で作ってみました。

 

必要なメソッドのみ実装し、未実装のものは例外を投げています。

実装したメソッドは以下の通りです。

 

  • Initialize・・・プロバイダクラス初期化
  • CreateUser・・・ユーザ作成
  • GetUser・・・ユーザ取得
  • ValidateUser・・・ユーザ名とパスワード有効チェック

 

ChangePassword、DeleteUser等は必要に応じて実装していく予定です。

 

続いて、Web.configです。

 

machineKeyは暗号化キーとして使うために必要なものです。

membership内では自作クラスの呼び出しを設定しています。

 

ついでに権限の管理を行うカスタムロールプロバイダも作成しました。

たいした内容ではないのですが、時間があればまとめたいと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください