1. in der Global.asax.cs Datei hole ich die Rollenzugehörigkeit des Users!

protected void Application_AuthenticateRequest(Object sender, EventArgs e)
{
        Logins.GetUserRoles();
}

Methode Logins.GetUserRoles!

public static void GetUserRoles()
{
        HttpContext Context = HttpContext.Current;
        if (!Context.Request.IsAuthenticated)
                return;

        // aktuelles Login holen (angemeldeter User)
        Login curLogin = Logins.currentLogin;
        // Holen seiner Rollen Zugehörigkeit
        string[] myLoginRoles = GetUserRoles(curLogin);

        // Kontrolle des Zugriffs
        Context.User = new GenericPrincipal(Context.User.Identity, 
myLoginRoles);
}

Methode Login.GetUserRoles
public static string[] GetUserRoles(Login login)
{
        // Hier holst Du jetzt die Daten zum Vergleich. Entweder steht das in   
// der DB - oder Du generierst eigene sachen. Einfach Sinnvolle Wörter  // 
nehmen
        // Zb.:

        string[] myLoginRoles = new String[2];
        If (login.isAdmin)
                myLoginRoles[0] = "Administrator";
        
        if (login ....)
                myLoginRoles[1] = "...";

        // usw
        
        Return myLoginRoles;
}

So und nun schreibste dir ne Web.Config - in der du die Zugriffsrechte 
definierst!

<?xml version="1.0" encoding="utf-8" ?>
<configuration>    
  <system.web>
                <authorization>
                        <allow roles="Administrator"/>
                        <deny users="*" />
                </authorization>
        </system.web>
</configuration> 

Der Block schützt in dem Fall jetzt ein komplettes Verzeichnis - und lässt nur 
noch Logins rein die als Rolle auch Administrator haben!  

Das ganze kann man aber auch Pro Datei machen.

Aber Achtung - grundsätzlich werden nur ASPX Dateien geschützt! Keine Bilder, 
Zip Dateien oder so was! (zumindest unter ASPNET 1.1)


-----Ursprüngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Falk Harnisch
Gesendet: Dienstag, 11. Oktober 2005 10:19
An: [email protected]
Betreff: RE: [Asp.net] Sicherheitscheck durch Include

Kannst du mir mal ein konkretes Beispiel schicken? 

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
On Behalf Of Pessner, Andreas
Sent: Dienstag, 11. Oktober 2005 10:15
To: [email protected]
Subject: AW: [Asp.net] Sicherheitscheck durch Include

Und?

Du kannst die Kontrolle pro Seite und pro Verzeichnis definieren.
Einfach eine Methode den User und dessen Rollen lädt (besser cached)
schreiben - und bei einem Seitenaufruf wird automatisch gecheckt ob er
darf oder net.

-----Ursprüngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im
Auftrag von Falk Harnisch
Gesendet: Dienstag, 11. Oktober 2005 10:12
An: [email protected]
Betreff: RE: [Asp.net] Sicherheitscheck durch Include

Da ich mehrere Seiten habe, die je nach Benutzerrolle unterschiedliche
Moeglichkeiten bieten. Deshalb muss erst ein check mit der UserDB
erfolgen, ob entsprechende Rechte vorhanden sind.

Gruesse

Falkster

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
On Behalf Of Alexander Zeitler
Sent: Dienstag, 11. Oktober 2005 10:00
To: [email protected]
Subject: RE: [Asp.net] Sicherheitscheck durch Include


Hallo,

> 
> Hi,
> Ich moechte gerne in eine extra Klasse eine ueberpruefung 
> rein bauen, ob
> der Zugriff auf meine Seite auch rechtens ist, wenn nicht, dann soll
> eine Weiterleitung auf die login Seite erfolgen.
> Jetzt weiss ich aber nicht, wie ich so eine Klasse bauen 
> soll, da ich in
> dieser keinen Zugriff auf das Response und Request Objekt habe.
> 

warum prüfst Du nicht einfach mittels Forms-Authentication,
ob der User authentifiziert ist?

Dann hast Du alles out-of-the-box.

Gruss

Alex


_______________________________________________
Asp.net Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/asp.net



_______________________________________________
Asp.net Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/asp.net


_______________________________________________
Asp.net Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/asp.net



_______________________________________________
Asp.net Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/asp.net


_______________________________________________
Asp.net Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/asp.net

Antwort per Email an