Jo,
ich nur in der Web.config im Root den Abschnitt
<authentication mode="Forms">
<forms name=".ASPXAUTH" loginUrl="login.aspx" protection="All"
timeout="20" />
</authentication>
Ansonsten habe ich in jeder Seite den von dir gepasteten Code. Dadurch, dass
ich mein Cookie selber schreibe
kann ich beliebig viele Daten als String Array in den UserData unterbringen.
-----Urspr�ngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im
Auftrag von Lars Berner
Gesendet: Donnerstag, 21. August 2003 13:15
An: [EMAIL PROTECTED]
Betreff: Re: AW: [Asp.net] Frage zu Authentifizierung /Autorisierung:
Hi Martin,
wenn ich das hier richtig sehe, verzichtest du total auf die M�glichkeiten
der Web.config sondern regelst alles mit VV.NET-Code?
Musst du in deinem Falle den Code
>Pblic splitter as char = ";"
>
>Private XID as FormsIdentity = HttpContext.Current.User.Identity >Private
XTicket as FormsAuthenticationTicket = XID.Ticket >Private XUserData as
String = XTicket.UserData >Private XCredentials() as String =
XUserData.Split(splitter) >Private XUser as String = User.Identity.Name
>Private XPassword as String = XCredentials(1) >Private XRole as String =
XCredentials(0) >
> private sub Page_Load()
> if (XRole <> "Webadmin")
> Response.Redirect("../403.htm")
> end if
>
> if Not IsPostBack Then
>
> end if
> end sub
>
>
dann in jede einzelne Seite schreiben oder vererbst du eine klasse mit
diesem Cade an jede betroffene Page?
Gr�sse
LB
At 13:05 21.08.2003 +0200, you wrote:
>Hi,
>Ich habe das bei mir so umgesetzt:
>Login Seite:
>
>..."Rolle aus Datenbank auslesen (Parameter 3 der Stored Procedure)...
>..."Cookie mit allen notwendigen Daten schreiben"
>
>Dim XUserData as String = sqlCmd.Parameters(3).Value.ToString() & ";" &
>UserPassXact.Value Dim XTicket as FormsAuthenticationTicket = new
>FormsAuthenticationTicket(1, UserNameXact.Value, DateTime.Now,
>DateTime.Now.AddMinutes(480), true, XUserData,
>FormsAuthentication.FormsCookiePath)
>
>Dim XHash as String = FormsAuthentication.Encrypt(XTicket)
>Dim XCookie as HttpCookie = new
>HttpCookie(FormsAuthentication.FormsCookieName, XHash)
>Response.Cookies.Add(XCookie)
>Response.Redirect(Request.QueryString("ReturnUrl"))
>
>Andere Seiten:
>
>Public splitter as char = ";"
>
>Private XID as FormsIdentity = HttpContext.Current.User.Identity
>Private XTicket as FormsAuthenticationTicket = XID.Ticket Private
>XUserData as String = XTicket.UserData Private XCredentials() as String
>= XUserData.Split(splitter) Private XUser as String =
>User.Identity.Name Private XPassword as String = XCredentials(1)
>Private XRole as String = XCredentials(0)
>
> private sub Page_Load()
> if (XRole <> "Webadmin")
> Response.Redirect("../403.htm")
> end if
>
> if Not IsPostBack Then
>
> end if
> end sub
>
>
>Mit freundlichen Gr��en,
>
>Martin
>
>-----Urspr�ngliche Nachricht-----
>Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
>Im Auftrag von Lars Berner
>Gesendet: Donnerstag, 21. August 2003 12:37
>An: [EMAIL PROTECTED]
>Betreff: [Asp.net] Frage zu Authentifizierung /Autorisierung:
>
>
>
>Meine Anwendung hat drei Unterverzeichnisse: Admin, Jeder, UserBereich.
>
>Die genannten Verzeichnisse liegen ein Verzeichnis �berhalb des
>untersten Verzeichnisses meiner Anwendung. Jetzt habe ich folgendes
>bisher ohne Erfolg versucht mit unten stehender Anweisung
>...
>
>HttpContext.Current.User = myCurrentUser (�myCurrentUser Instanz der
>Klasse
> GenericPrincipal)
>
>
>FormsAuthentication.RedirectFromLoginPage(myCurrentUser.UserName,
>False)
>
>...
>umzusetzen: Auf der Ebene der Application habe ich an der Web.config
>nichts ge�ndert ausser dass ich den Verweis bei erfolgloser
>Authentifizierung auf meine Login-Seite lenke und Modus "Forms" w�hle:
>
> <authentication mode="Forms">
> <forms loginUrl="FrontEnd/Jeder/Login.aspx">
> </forms>
></authentication>
>
>In das Verzeichnis UserBereichhabe ich folgende Web.config gelegt
>
><system.web>
> <authorization>
> <allow roles="OkRolle, AdminRolle" />
> <deny roles="DenyRolle" />
> <deny users="?" />
> <!--<deny users="*" /> -->
> </authorization>
>
> </system.web>
>
>weil ich (vorher alles im Code festgelegt) nur m�chte, dass diejenigen
>User Zugriff auf diesen Abschnitt haben, die der Rolle "AdminRolle"oder
>"OkRolle" angeh�ren. Anhand einer Datenbankabfrage werden die Userdaten
>�ber das login-Form eingelesen. Hierbei scheint die Anwendung allerdings
>gegen (hilflos sei :-( ) zu ignorieren, wenn der User ausschlieslich die
>Rolle "DenyUser" inne hat und diesem trotzdem Zugriff zu gew�hren !?!?
>
> Im Admin-Verzeichnis habe ich folgende web.config:
>
><system.web>
> <authorization>
> <allow roles="AdminRolle" />
> <deny roles="OkRolle, DenyRolle" />
> <deny users="*" />
> </authorization>
></system.web>
>
>Was muss denn anders gemacht werden, dass das Ganze richtig
>funktioniert?
>
>Da sind doch sicher logische Fehler drin !?
>
>Viele Gr�sse
>
>LB
>
>
>
>www.zoologie-online.de
>
>Lars Berner
>Stormcrow-Software
>Postfach: 110123
>69071 Heidelberg
>
>
>_______________________________________________
>Asp.net mailing list
>[EMAIL PROTECTED] http://www.glengamoi.com/mailman/listinfo/asp.net
>
>
>---
>Eingehende Mail ist zertifiziert virenfrei.
>�berpr�ft durch AVG Antivirus System (http://www.grisoft.com/de).
>Version: 6.0.510 / Virendatenbank: 307 - Erstellungsdatum: 14.08.2003
www.zoologie-online.de
Lars Berner
Stormcrow-Software
Postfach: 110123
69071 Heidelberg
_______________________________________________
Asp.net mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/asp.net