Ich mache da folgendes:
if (Request.IsAuthenticated == true)
{
String[] roles;
if ((Request.Cookies["Gruppen"] == null) ||
(Request.Cookies["Gruppen"].Value == ""))
{
ArrayList userRoles = new ArrayList();
// Hier musst Du lesen, in welchen Gruppen der User ist
(Datenbank, ...)
// Ich lege den User hier mal fest in die Gruppe "admin"
und "user".
String roleStr = "admin;user;";
FormsAuthenticationTicket ticket = new
FormsAuthenticationTicket(
1,
Context.User.Identity.Name,
DateTime.Now,
DateTime.Now.AddHours(1),
false,
roleStr // Gruppen
);
String cookieStr = FormsAuthentication.Encrypt(ticket);
Response.Cookies["roles"].Value = cookieStr;
Response.Cookies["roles"].Path = "/";
Response.Cookies["roles"].Expires =
DateTime.Now.AddMinutes(1);
}
else
{
FormsAuthenticationTicket ticket =
FormsAuthentication.Decrypt(Context.Request.Cookies["Gruppen"].Value);
ArrayList userRoles = new ArrayList();
foreach (String role in ticket.UserData.Split( new
char[] {';'} ))
{
userRoles.Add(role);
}
roles = (String[]) userRoles.ToArray(typeof(String));
}
Context.User = new GenericPrincipal(Context.User.Identity,
roles);
}
Danach kannst Du dann mit Context.User.IsInRole("admin") �berpr�fen, ob
der aktuelle User in einer bestimmten Gruppe ist.
CIAO
Michael
-----Urspr�ngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im
Auftrag von Stefan Tammerl
Gesendet: Montag, 24. Februar 2003 15:36
An: [EMAIL PROTECTED]
Betreff: [Asp.net] benutzerrechte und zugriff auf verschiedene bereiche
einer webseite
Hallo!
Wir haben ein Benutzersystem, welches auf der web.config und der
global.asax Datei beruht und mit Rollen und User-Rechten funktioniert.
Nun das Problem:
Ich programmiere eine Art Forum, in dem verschiedene Benutzer mit
unterschiedlichen Rechten Eintr�ge erstellen k�nnen.
Wie bewerkstellige ich es nun, dass nur solche Benutzer einen Beitrag
bearbeiten bzw. l�schen k�nnen, welche laut Datenbank dazu authorisiert
sind?
In unserem System muss man sich anmelden, dann wird bestimmt, ob man
generell in einem bestimmten Bereich authorisiert ist, Beitr�ge zu
erstellen und
dann soll eben noch abgefragt werden, ob ein Benutzer die Nachricht, die
er bearbeiten/l�schen m�chte, auch erstellt hat.
Wer hat L�sungsvorschl�ge?
Danke,
Stefan
_______________________________________________
Asp.net mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/asp.net