ここでのASP.NETの初心者は、既存のデータベースをASP.NETの認証システムに統合する方法を探しています。ASP.NET MVC 4サイトで認証に使用するデータベース(Model-First Entity Framework 5)と対話するためにEntityFrameworkを使用する別のプロジェクトがあります。
さらに複雑なことに、これは単純なユーザー名/ハッシュ/ソルトテーブルではありません。私はブラインドハッシュを採用しており、Google認証システム(OATH-TOTP)を使用した2要素認証はユーザーが利用できるオプションです。さらに、私にはユーザーだけでなく、アカウントとプロファイルがあり、アカウントには多くのプロファイルを含めることができます(所有者が簡単に切り替えることができる、公的な意味での別個の「ユーザー」)。最後に、アカウントには1つだけでなく複数のメールを含めることもできます。つまり、これは、認証を処理するときの通常のユーザー/パスワードの規則に適合しません。幸い、これらのエンティティ(Accountなど)のほとんどに、次のようなこれを簡単に処理する方法を提供するために、部分的なクラスを作成しました。
someAccount.CheckPassword(password[, twoFactorToken])
Entity Framework 5を使用してこれを簡単に行うことができますが、ASP.NETMVC4がユーザーを処理する方法に精通していません。ASP.NET MVC 4でユーザー認証を実行する簡単な方法はありますか?MembershipProviderで何かする必要がありますか?SimpleMembershipまたはレガシーメンバーシップを使用しますか?ボーナス:Windows Identity Frameworkを利用して、代わりに使用できますか?