Laden...

Logginmechanismus

Erstellt von FerryG vor 18 Jahren Letzter Beitrag vor 18 Jahren 1.447 Views
F
FerryG Themenstarter:in
86 Beiträge seit 2005
vor 18 Jahren
Logginmechanismus

Hallo Leute,

ich werde in meinem Projekt nach erfolgreichem Logging auf die nächste Seite
witergeleitet und die Url enthält meine Personalnummer Z00002 siehe URL

http://XXXX.xxxx03.xxxx.net/OnlineCheck1.aspx/loginid=Z00002

Mein Problem ist wenn ich her gehe und die Personalnummer einer anderen Person
als loginid in die URL schreib wird mir dessen Seite gezeigt!

Wie kann ich verhindern dass eingeloggte Personen durch den Eintrag anderen Personalnummern auf andere Seiten zugreifen können.

Danke,

FerryG

4.506 Beiträge seit 2004
vor 18 Jahren

Hallo FerryG,

das ist ein grundsätzliches Problem, wenn Session-Daten über die URL übertragen werden.

Prinzipiell kann man aber davon ausgehen, dass eine Session auch nur auf einem PC läuft. (Wenn nicht, dann ists wirklich verdammt schwer). Deshalb kannst Du folgendermaßen vorgehen:

Beim erfolgreichen Login, und bevor Du auf Deine eigentliche Startseite navigierst, speicherst Du in den Session-Daten (und jetzt NICHT Url) auch die IP-Adresse des Clients. Bei jeder Seite, die ein Login benötigst überprüfst Du, ob zu der Personalnummer immernoch die selbe IP-Adresse vorherrscht, wenn nicht, verwehrst Du dessen Zutritt.

Ciao
Norman-Timo

A: “Wie ist denn das Wetter bei euch?”
B: “Caps Lock.”
A: “Hä?”
B: “Na ja, Shift ohne Ende!”

N
61 Beiträge seit 2005
vor 18 Jahren

Wenn ich einen Login in meine Seite mache, benutze ich immer die Funktion von .Net.
Da kannste in der web.config die Formularauthentifizierung einstellen.

Am bessten du suchst mal nach System.Web.Security und Formularanmeldung, oder so.

Du kannst dann danach in deiner Seite abfragen wer sich angemeldet hat und darauf reagieren.

F
FerryG Themenstarter:in
86 Beiträge seit 2005
vor 18 Jahren

Hallo norman_timo,

wie kann ich die IP-Adresse rauslesen? Ansonsten ist das eine Klasse Lösung...

4.506 Beiträge seit 2004
vor 18 Jahren

Hallo FerryG,

die IP-Adresse solltest Du mittels:

Request.UserHostAddress;

bekommen 😉

Ciao
Norman-Timo

A: “Wie ist denn das Wetter bei euch?”
B: “Caps Lock.”
A: “Hä?”
B: “Na ja, Shift ohne Ende!”

178 Beiträge seit 2006
vor 18 Jahren

Moin,

eine etwas andere Lösung wäre folgende:

Ich nehme an, dass Du irgendwo Personalnummern mit Login´s verbindest (zb Datenbank).

Da Du Security des .NET Frameworks nutzt wirst Du innerhalb Deiner Session eindeutig indentifiziert.


Context.User.Identity

Somit kannst Du ordentlich prüfen ob der aktuell authentifizierte auch der User ist, denn Du mit Deiner Personalnummer erwartest. Das prüfen der IP geht zwar, aber wirklich schön ist es nicht (und läst sich natürlich auch faken).

Enjoy

Christian Arnold