13

ASP.NET MVC 5 の新しい認証機能を試してみました (以前は を使用していましたDotNetOpenAuth)。

組み込みの Google プロバイダーが OpenID [1] を使用することは理解していますが (それは正常に動作します)、認証時に独自の OpenID プロバイダーを使用したいと考えています。

残念ながら、ASP.NET MVC 5 のすぐに使用できる機能を使用してこれを実現する簡単な方法を見つけることができませんでした。ソースを調べたMicrosoft.Owin.Security.Googleところ、これに基づいて、新しい OpenID を追加することはかなり可能であると思われます。プロバイダー。

新しい OpenID プロバイダーを ASP.NET MVC 5 アプリケーションに追加する簡単な (おそらく既に組み込まれている) 方法はありますか? それともゼロから作成する必要がありますか (新しい Owin ミドルウェア)?

[1] http://www.asp.net/mvc/tutorials/mvc-5/create-an-aspnet-mvc-5-app-with-facebook-and-google-oauth2-and-openid-sign-on
[2] http://www.symbolsource.org/MyGet/Metadata/aspnetwebstacknightly/Project/Microsoft.Owin.Security.Google/2.0.1-rtw1-20924-641-dev/Release/.NETFramework,Version=v4. 5/Microsoft.Owin.Security.Google

4

1 に答える 1

5

私も同じ状況で、答えは「いいえ」だと思います。

主要なクラスは、OWIN バックエンド ハンドラーを実装する Microsoft.Owin.Security.Google.GoogleAuthenticationHandler です。AuthenticateCoreAsync でhttps://www.google.com/accounts/o8/udへの呼び出しをハード コーディングし、ApplyResponseChallengeAsync で Attribute eXchange 要求をハード コーディングします。もっと良い方法 (つまり、OpenID ベース クラス) があれば、これら 2 つの箇所をハード コーディングする代わりに、きっとそれを使用しただろうと思います。私は、Microsoft がスケジュール上の理由または需要の欠如を認識したために、それを一般化しなかったと仮定しています。

オープン ソースの汎用 OpenID OWIN ミドルウェアは、優れた NuGet パッケージになると思います。

于 2013-10-21T21:51:57.393 に答える