2009-06-24 5 views
0

ich eine Website erstellen möchten, die das Login-System sollte nicht von Cookies behandelt werden, sondern auf (a) Tabelle (n) in der lokalen (auf dem Server) SQL-DB.Wie eine Datenbank angetrieben Login-System erstellen

Gibt es eine Möglichkeit, es zu tun? Auch keine Teilweise?

Was und wo soll ich anstelle des Cookies speichern ???

Antwort

3

ASP.NET verwendet Session-Cookies durch Standardbenutzeranforderungen zu verfolgen. Wenn Sie Sitzungen ohne Cookies verwenden, wird die Sitzungs-ID in allen Anfragen des Browsers angehängt. In vielen Szenarien könnte dies auch inakzeptabel sein.

Auch wenn Sie die Datenbank treffen entscheiden und prüfen, ob eine „LoggedIn“ Flagge auf jede Anfrage, müssen Sie noch eine Möglichkeit die eingehende Anforderung als die Zugehörigkeit zu einem bestimmten Benutzer zu identifizieren. Dies könnte in Form von verschlüsselten Werten in versteckten Feldern geschehen, abhängig von Ihrem Sicherheitsszenario. Das heißt, es ist nicht eine viel bessere Methode als die Verwendung von Cookies, weil jede Daten, die vom Client kommt das Potenzial hat, manipuliert wurden.

Ich persönlich denke, Cookies sind groß, wie lange Benutzeranforderungen zu verfolgen, wie Sie sie richtig zu verschlüsseln.

1

Cookieless ASP.NET

Wenn Sie tatsächlich benötigen helfen, das Login-System Implementierung Sie weitere Informationen über Ihr spezielles Problem umfassen müssen.

+0

+1 - vollständig ignoriert diese Methode –

+0

Ich aktualisierte die Frage – Shimmy

0

Verwenden Sie die SqlMembershipProvider.

+0

Wie macht das die Notwendigkeit für Cookies, Joel? – Cerebrus

+0

Sie beantwortet die andere Hälfte der Frage - wie ein Login-System durch eine SQL-Datenbank ... – GalacticCowboy

+0

Mit anderen Worten, neu zu erfinden das Rad nicht angetrieben zu implementieren. – GalacticCowboy

2

Sie müssen noch eine Möglichkeit, die Benutzer auseinander zu erzählen. Wenn Sie keine Cookies verwenden, müssen Sie diese Informationen in URLs übertragen oder nur einem Benutzer eine einzige IP-Adresse zuweisen (das ist wirklich dumm) ... oder etwas anderes. Plätzchen sind nicht so schlecht :-).

1

Sie können Ihre Benutzernamen speichern und so in einer Datenbank, aber Sie müssen noch einen Weg, um den Benutzer zu erkennen, wie er/sie von Seite zu Seite navigiert. Das ist die Cookies Rolle, diese Login-Token bestehen bleiben ...

Es ist möglich, einige andere Möglichkeiten des Umgangs mit diesem Token umzusetzen. Man kann die versteckten Felder URL oder Somme verwenden (als ViewState von ASP.NET), um dieses Token zu speichern.

Also, ja; es kann getan werden. Aber es braucht etwas Arbeit, da Sie nicht das verwenden können, was ASP.NET Ihnen bereits bietet. (ASP.NET hat builtin-Funktionen dieses Token als Cookie zu handhaben, und speichern Sie auch die Anmeldeinformationen in der Datenbank.)

Verwandte Themen