Laden...

Forms Authentication Login Problem

Erstellt von tomek2k1 vor 17 Jahren Letzter Beitrag vor 17 Jahren 1.805 Views
T
tomek2k1 Themenstarter:in
86 Beiträge seit 2005
vor 17 Jahren
Forms Authentication Login Problem

Hey Ho 🙂

Habe ein Problem. 😦

Ich bin gerade dabei in einer fertigen WebApplication die FormsAuthentication einzubauen.

Ich habe folgendes Problem:

Die Startseite meine Page heisst Index.aspx
Auf dieser Index.aspx ist eine WebControlFactory die mir währen der laufzeit immer die benötigten Controls lädt.

Ich rufe die Index.aspx auf und sehe das Login. Wenn ich mich erfolgreich eingeloggt habe wird ein Redirekt auf Index.aspx?cmd=Users gemacht.

So weit so gut. Doch wenn ich in der Adressleiste im Browser Index.aspx?cmd=Users eingebe komme ich trotzdem in den geschützten Bereich! Trotz FormsAuthentication!
Wenn ich aber ne andere aspx seite aufrufe werde z.B. test.aspx werde ich auch die Index.aspx redirected.

Ist es möglich, dass die Forms Authentication nicht mit solchen Parametern umgehen kann?

Freue mich auf eine Antwort.

p.s.: Leider darf ich keinen Code posten. 😦

mfg

Tomek

Microsoft Certified Professional (MCP)

Meine persönliche Seite: www.tomeks-world.de

1.130 Beiträge seit 2005
vor 17 Jahren

Original von tomek2k1
Ist es möglich, dass die Forms Authentication nicht mit solchen Parametern umgehen kann?

Ja, ist durchaus möglich. Ich denke die Authentication wird sich einfach nur den Dateinamen, ohne Parameter anschauen und dann entscheiden ob die Seite "frei" ist, oder nicht.

T
tomek2k1 Themenstarter:in
86 Beiträge seit 2005
vor 17 Jahren

Naja... ist ziemlich blöd... 😦

Ich hoffe, dass das im .NET 2.0 Framwork anders ist.
Hat damit vielleicht schon jemand Erfahrung, was genau diese Problem angeht?

Microsoft Certified Professional (MCP)

Meine persönliche Seite: www.tomeks-world.de

1.130 Beiträge seit 2005
vor 17 Jahren

Denke nicht das diese Gegebenheit im Framework 2.0 anders ist. Eigentlich ist diese Lösung ja auch logisch....

C
1.215 Beiträge seit 2004
vor 17 Jahren

Kann es sein, dass Du eine Browser-Instanz verwendest, mit der Du Dich bereits erfolgreich eingelogged hast oder nimmst Du für's Testen stets ein "frisches" Browser-Fenster?

Grüsse

T
tomek2k1 Themenstarter:in
86 Beiträge seit 2005
vor 17 Jahren

Ich nehme einen "frischen" Browser. Ich builde den Kram und dann starte ich es nicht übers Visual Studio sondern über den Internet Explorer.

Ich habe es auch schon auf einem Server Deployed und da ist es das gleiche Problem 😕

Microsoft Certified Professional (MCP)

Meine persönliche Seite: www.tomeks-world.de

1.130 Beiträge seit 2005
vor 17 Jahren

Es wird so sein, wie ich es gesagt habe. Zur Überprüfung wird nur der Dateiname, ohne Querystrings benutzt.

T
tomek2k1 Themenstarter:in
86 Beiträge seit 2005
vor 17 Jahren

Das denke ich auch.... habe das Problem mittlerweile per Code gelöst, in dem ich selber in die Session schreibe und sie immer wieder abfrage, sobald ein Control geladen wird.

Aber im Grunde ist das doch kacke!

Microsoft Certified Professional (MCP)

Meine persönliche Seite: www.tomeks-world.de

1.130 Beiträge seit 2005
vor 17 Jahren

Original von tomek2k1
Aber im Grunde ist das doch kacke!

Nein, eigentlich nicht. Wenn es nicht so wäre, hätte es meiner Meinung nach mehr Nachteile.

N
61 Beiträge seit 2005
vor 17 Jahren

Wenn du nur in deiner index.aspx arbeitest, dann muss du die Benutzer wohl oder übel im Programm abfangen. Falls du jedoch eine extra login Seite machst, dann kannst du diese in der web.config angeben und den Rest (index.aspx) nur für registrierte Benutzer freigeben.

Ich denke, dass du mit einer art "CMS" arbeitest. Das gleiche hatte ich mal vor. Jede Control wird aus ner Datenbank gelesen und auf die Seite geladen. Hat alles super funktioniert. Leider ist das Projekt in den Hintergrund geraten.

Ich denke, du solltest "WebControlFactory" in eine extra Assamblie auslagern und diese in eine neue Control einfügen, mit welcher du je nach Benutzeranmeldung deine Controls auf die Seite lädst.
Oder du machst es ganz anders und nimmst die Benutzerverwaltung als fundamentalen Baustein in deine index.aspx.