url-Muster und Platzhalter

Während der Konfiguration der security-constraints für eine web-Modul Rollen im J2EE-Anwendung ich habe Folgendes problem:

Anwendung:

Angabe eines servlet-Namen customersServlet, die Sie erhält zwei Parameter in der URL:

  • Eine Zeichenfolge, die eine operation (INS, UPD -, DLT-und DSP).
  • Eine Identifikationsnummer zum identifizieren eines Kunden, auf dem die operation durchgeführt werden.

E. G.: die url /servlet/cusotmersServlet?UPD,5 wird verwendet, um den update-Kunden-Nummer 5 werden die Daten und die url /servlet/customersServlet?DLT,8 wird verwendet, um zu löschen Kundennummer 8.

Problem:

Wenn ich diese security-constraint das servlet kann nur zugegriffen werden, indem die Rolle angegeben, die ist ok:

<security-constraint>
    <web-resource-collection>
        <web-resource-name>...</web-resource-name>
        <url-pattern>/servlet/clientsServlet*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>clientAdmin</role-name>
    </auth-constraint>
</security-constraint>

Aber ich will die Möglichkeit einschränken, einfügen, die Kunden erst zu einer Rolle namens clientAdmin.

Ich habe versucht, mehrere url-Muster, aber keiner von Ihnen arbeitet, wie ich will (alle von Ihnen erlauben, jede Rolle Zugriff auf das servlet mit jedem beliebigen parameter):

<url-pattern>/servlet/clientsServlet?INS,*</url-pattern>
<url-pattern>/servlet/clientsServlet?INS/*</url-pattern>
...

Wie zu verwenden das wildcard - * im url-pattern tag?

Hinweis: Die Anwendung kann nicht geändert werden, also brauche ich eine Lösung, die nur bedeutet Sie ein berühren der deployment-descriptor.

InformationsquelleAutor mmutilva | 2010-05-04

Schreibe einen Kommentar