Ich habe eine Webanwendung, die ich in ASP.NET entwickle und die die folgenden Sicherheitsanforderungen hat:
- Muss mit einem Master-Authentifizierungsschema integriert werden können, das einen eindeutigen Schlüssel an die Anwendung zurückgibt, um anzuzeigen, dass sich ein Benutzer über eine Drittanbieter-Website angemeldet hat.
- Sie müssen in der Lage sein, bestehende Benutzer-/Rollentabellen zu verwenden.
- Sie können eine Formularauthentifizierung verwenden und es den Nutzern ermöglichen, sich über eine separate Anmeldeseite anzumelden, wenn sie nicht Mitglied der Website des Drittanbieters sind.
Ich habe versucht, die SQL-Rollen- und Mitgliedschaftsanbieter anzupassen, aber ich stoße auf Probleme, insbesondere, dass es ein stark typisiertes MembershipUser-Objekt gibt, das einen eindeutigen Bezeichner (providerKey) hat und keinen Platz für meinen eigenen benutzerdefinierten Satz von Schlüsseln hat (es wird zwei geben), die Benutzer identifizieren.
Sollte ich meine benutzerdefinierte Mitgliedschaftsanbieter-Implementierung aufgeben und stattdessen einfach Cookies/Session verwenden? Ich würde wirklich gerne die integrierte Funktionalität verwenden, aber es scheint nicht machbar.