Ich versuche, einen benutzerdefinierten Filter für meine Web-API-Controller Teil einer ASP.NET MVC 5 Website/Anwendung, um die Anforderungen Header für ein bestimmtes Token zu überprüfen, die ich in der Datenbank gespeichert habe. Die meisten Beispiele, die ich gefunden habe, enthielten Benutzeranmeldeinformationen und anschließend wurde der Benutzer mithilfe der Identität authentifiziert. Nicht genau wonach ich suche.Web API benutzerdefinierten Authentifizierungsfilter
Dies ist die tutorial die ich gefunden habe und derzeit befolge.
Die Web-API sollte nur "externe" HTTP-Aufrufe verarbeiten, die Website-Seite wird derzeit eigene Controller haben (kann aber Änderungen unterliegen).
Dieser Filter sollte, wenn möglich, mit dem bereits vorhandenen Identität 2-System verbunden sein.
Was ich tue ist, dass ich Benutzeranmeldeinformationen sende, dann ein Token dem Benutzer zuweisen und dann möchte ich dieses Token verwenden, um die Anfrage zu authentifizieren. Gibt es eine Möglichkeit, die Anfrage nur anhand des Tokens zu filtern oder muss ich Owin-Identität und ihre Token-Verwaltung verwenden? Ich benutze einen mobilen Client (derzeit iOS, wird auch Android enthalten), um die Anrufe zu tätigen. Irgendein Beispiel oder Tutorial, auf das ich mich beziehen könnte?
Das Token ist derzeit eine zufällige Kombination aus alphanumerischen Zeichen und Symbolen.
Vielen Dank.
P.S. Ich kann Code-Snippets und andere Dinge schreiben, wo sie benötigt werden.
Bearbeiten: Die HTTPRequests werden gefiltert, je nachdem, ob sie ein Token in unserer Datenbank/System enthalten. Anfragen, die ein Token enthalten oder in unserem System nicht vorhanden sind, erhalten einen unautorisierten Fehler (401?)
Also ist das Token in der HTTP-Anfrage-Header? – Botonomous
Ja, das Token befindet sich im Anforderungsheader. – beowulf
Was meinst du damit, die Anfrage basierend auf dem Token zu filtern? Wird nicht jedes HTTPReq-Feld das Token enthalten oder müssen nur Anforderungen gefiltert werden, wenn sie ein Token haben? – Botonomous