Konfigurieren von url-mapping in web.xml um den Zugriff einzuschränken?
Ich habe paar Seiten in folgende Struktur.
--Project
|---WebContect
|----Admin/*
|----Author/*
|----Readonly/*
|----Index.jsp
Ich soll den Nutzer beschränken den Zugriff auf Seiten, die unter Admin
,Author
und Readonly
. Ich will nicht, dass jemand Zugriff auf diese Seiten. Und wenn jemand versucht, dies zu tun, sollten umgeleitet werden, um index.jsp
.
Ist die einfachste Lösung, die kommen in meinem Kopf ist, mit einem Filter
, aber ich bin versucht zu finden, wenn möglich, zu tun, mit web.xml
.
Oder in anderen Worten: ich möchte den Zugriff zulassen 'index.jsp' nur unabhängig von der Rolle oder Berechtigung.
InformationsquelleAutor Ashish Agarwal | 2012-06-29
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie möchten, dass niemand ist in der Lage, Zugriff auf diese Seiten nicht direkt, nur setzen Sie Sie in
/WEB-INF
Ordner.Diese Weise die Seiten sind nicht öffentlich zugänglich, sondern nur durch ein servlet, das einen nach vorne. Wenn der Anwender versucht, direkt auf ihn zugreifen, alles, was er bekommen wird, ist ein HTTP-404-Fehler.
Alternative ist die Konfiguration eine Rolle-weniger
<security-constraint>
.Wenn der Anwender versucht, Zugang zu Ihnen, alles, was er bekommen wird, ist eine HTTP-403-Fehler.
Entweder Weg, es ist nicht möglich, die Umleitung des enduser zu
index.jsp
diese Weise. Nur einFilter
tun kann. Sie könnte konfigurieren Sie dieindex.jsp
als Fehler-Seite Speicherort für die 404 oder 403Aber dies würde für alle 404 oder 403), nicht sicher, ob das ist, was Sie wollen.
Dann denke ich, halten ein 404 ist einfach nur gut. Warum sollten die Anwender erhalten nur die Weiterleitung auf die index-Seite nur für eine bestimmte Gruppe von URLs, die der Anwender gar nicht bewusst sein? Haben Sie alle vorhandenen links, die irgendwo im web, die Punkte auf diejenigen beschränkt URLs? Gut, dann kann man wirklich nicht gehen, um einen filter für, die. Stellen Sie sicher, dass der filter führt eine 301-Weiterleitung, nicht einer 302-Umleitung, auf diesem Weg such-Roboter, entfernen Sie die alte URL aus dem index.
Einverstanden, Anwender sollten sich bewusst sein, jede eingeschränkte urls, die er zugreifen möchte. Zweitens, keiner von den link gegangen und hat öffentlich noch, also Ihr Punkt macht Szene
InformationsquelleAutor BalusC
müssen Sie versuchen, diese ? (Beispiel für das url-mapping)
Sorry ich hae fand eine Probe hier mit sample-und control-Authentifizierung in der url-mapping... ich versuche zu helfen. coderanch.com/t/584071/Tomcat/Exclude-url-authorized-access-web
Warum sind Sie copypasting snippets, die Sie im Google gefunden, während Sie nicht verstehen, was Sie eigentlich beantworten? Einfach Fragen beantworten, nur die, die Sie beantworten können von der Oberseite des Kopfes und können erklären, seine Funktionsweise im detail.
sorry Ihr Recht.
InformationsquelleAutor Mehdi Bugnard
wenn Sie wollen grand Zugriff auf die Seite/Ordner durch Rolle die Berechtigung, Sie haben eine security-constraint in Ihrem web-xml-Datei
Die Rolle, die erworben werden können, durch diesen code, wenn Sie verwenden standard Jaas-Authentifizierung
Hoffe, das hilft
UPDATE
Und für die Umleitung auf die login-Seite sollten Sie auch sowas in der web.xml
InformationsquelleAutor MaVRoSCy