Ich verstehe nur einige Code im Microsoft.Web.WebPages.OAuth
Namespace, speziell die OAuthWebSecurity Klasse.Stuck mit Microsoft.Web.WebPages.OAuth.OAuthWebSecurity in einer MVC-Anwendung
Es ist diese Methode hier: -
internal static void RequestAuthenticationCore(HttpContextBase context,
string provider, string returnUrl)
{
IAuthenticationClient client = GetOAuthClient(provider);
var securityManager = new OpenAuthSecurityManager(context,
client, OAuthDataProvider);
securityManager.RequestAuthentication(returnUrl);
}
Die erste Zeile ist in Ordnung => die Provider-Daten greifen, für diese Authentifizierungsanforderung. Lass uns so tun, als wäre dies ein TwitterClient(..)
.
Jetzt müssen wir eine SecurityManager
Klasse erstellen, die drei Argumente akzeptiert. Was ist das dritte Argument? Ein OAuthDataProvider
? Das ist als eine statische definiert, hier:
internal static IOpenAuthDataProvider OAuthDataProvider =
new WebPagesOAuthDataProvider();
Und das schafft eine WebPagesOAuthDataProvider
. Das ist mein Problem. Was ist das? Und warum muss es eng an eine ExtendedMembershipProvider
gekoppelt sein? Was ist ein ExtendedMembershipProvider
? Warum ist das nötig?
In meiner Webanwendung versuche ich eine RavenDb-Datenbank und meine eigene benutzerdefinierte Principal und benutzerdefinierte Identität zu verwenden. Nichts zu tun mit Mitgliedschaft oder SimpleMembership, die mit ASP.NET kommt.
Könnte mir bitte jemand hier helfen? Was ist diese Klasse und warum wird sie benutzt? Was ist der Zweck? Ist das etwas, das DNOA erfordert? und warum?
(Ich hoffe auch heimlich, dass Andrew Arnott dieses Q sehen und mir helfen wird).
Aber ihr Code endet mit dem Aufruf von DNOA-Code, insbesondere dies => https://github.com/DotNetOpenAuth/DotNetOpenAuth/blob/master/src/DotNetOpenAuth.AspNet/IOpenAuthDataProvider.cs (Ich bin auch auf JabbR in Ihrem DNOA-Raum: P) –
Ja, ihr Code ruft DNOA auf. Mein Punkt ist, dass Sie dasselbe tun können, aber ohne die Verbindungen zur Mitgliedschaft, wenn Sie das vermeiden wollen. –