Frage

Wir müssen ersetzen Sie die Menü-system in unserer Haupt-ASP.NET Anwendung.So natürlich schauen wir uns den ASP.NET SiteMapProvider und Menu steuert.Aber wir brauchen auch genügend Sicherheit, um zu verhindern, dass Benutzer aus der direkt die Eingabe von URLs, die Sie gar nicht haben Zugang zu.Wir können dies tun, indem Sie <location> Einträge in web.config und sichern Sie individuell, sondern, dass Sie immer eine PITA zu verwalten, die über mehrere web-Server.

Gibt es eine Provider kann verwendet werden, um äquivalents der <location> Einträge?Ich habe nicht in der Lage zu finden, und es ist leicht frustrierend, angesichts der Existenz der ConfigurationLocation Klasse.

Alternativ gibt es eine Konfigurations-option, die wir missing in SiteMapProvider, die wird verhindern, dass Benutzer immer auf URLs sollten Sie nicht?

War es hilfreich?

Lösung

Warum entwickeln Sie nicht Rechte und profile zu verwalten, welche Seiten der Benutzer sehen kann?Ich in der Regel erstellen Sie eine user-Klasse, die implementiert die IPrincipal-Sicherheit-Schnittstelle.Bei jeder Anforderung an die Anwendung, überprüfen Sie die Rechte, einen bestimmten Benutzer und die Ausgabe der XML-SiteMap-Knoten erlaubt, die für diesen Benutzer.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top