2012-12-28 12 views
5

私はMVC4について学び始めています。最初のステップとして、データベース内の3つの役割だけを持つカスタムデータベースからログインする必要があります。MVC 4のカスタムメンバーシッププロバイダ

カスタムメンバーシッププロバイダを実装することは本当に必要ですか?私はこの投稿を読んでいて、別の方法でやっているので、これは疑問です。http://patrickdesjardins.com/blog/asp-net-membership-with-mvc4

私は、カスタムデータベースからユーザーを取得し、役割を決定するだけです。

ルールを決定するには、非常に簡単です。学生と教師という2つのテーブルがあります。それぞれのIDにはloggin IDと共通プロパティのパスワードがあります。

if (db.Students.Where(x => x.StudentId == x && x.Password == y) return "student" 
if (db.Teachers.Where(x => x.TeacherId == x && x.Password == y) return "teacher" 

// does not exist 

ASP.NETでこの機能を実装する方法を私に教えてください。

+0

カスタムロールプロバイダ? –

+0

組み込みの 'MembershipProvider'と' RoleProvider'を拡張して、カスタムデータベースで動作させることができます。 – HTX9

答えて

13

注:あなたがあなたの研究を開始する前に、以下のメンバーシップおよびロール管理は、ASP.NET MVC4に変更されていることに注意し、

.NET CoreまたはASP.NETコアには適用できない場合があり。 (Visual Studioの「インターネットアプリケーション」テンプレートを使用している場合)

変更された内容については、Jon Gallowayのblog postをお読みください。

Simple Membership Providerは「あなたに拡張され、

はどちらの実装をサポートする役割管理(これはASP.NETの一部であるとして、まだサポートされている)旧メンバーシップおよびロール管理システムの問題を克服するように設計されており、いずれかの実装を選択するか、自分のロールを自由に選ぶことができます。どちらが優れているかについての議論があり、両方の制限のために、開発者によっては独自の実装が好まれます。 (私は偏って得ることができるので、詳細には触れません)

ここでは、あなたを始めるためのチュートリアルです。 [Link] .. チュートリアルでは、新しいSimpleMembership/WebSecurityメソッドではなく、古いメンバーシップシステムについて説明しています。

UPDATE

あなたは十分な認証フレームワークを持っていると思うときだけ、MicrosoftがOWIN - Open Web Interface for .NETを発表しました。

OWINはオープンでプラグイン可能な.NET用のインターフェイスセットで、これには認証が含まれます。 MVC 5 OWINフォーム認証の使い方については、この記事[Link]を参照してください。 (うまくいけば、彼らはこれで新しい認証フレームワークの作成を止めるでしょう)

関連する問題