Java Servlet 3.1-Unterstützung für Sicherheit konfigurieren

Liberty unterstützt alle Sicherheitsupdates wie in der Spezifikation Java™ 3.1 definiert.

Informationen zu diesem Vorgang

Nutzen Sie die Java Servlet 3.1-Features in Liberty.

Vorgehensweise

  1. Fügen Sie das Feature servlet-3.1 in der Datei server.xml hinzu:
    <feature>servlet-3.1</feature>
  2. Legen Sie fest, welche der folgenden Java-Servlets 3.1-Funktionen Sie verwenden wollen:
    • Geben Sie autocomplete=off im Anmeldeformular an.
      Wenn Sie HTML für eine Formularanmeldeseite verwenden, geben Sie im Kennwortformularfeld autocomplete="off" an, um das automatische Eintragen von Kennwörtern im Web-Browser zu inaktivieren. Beispiel:
      <form method="POST" action="j_security_check">
      <input type="text" name="j_username">
      <input type="password" name="j_password" autocomplete="off">
      </form>
    • Geben Sie die für alle authentifizierten Benutzer gültige Integritätsbedingung für die Sicherheit (**) an.
      Der Sonderrollenname ** zeigt alle authentifizierten Benutzer an. Wenn ** in einer Berechtigungsintegritätsbedingung angezeigt wird und der Benutzer authentifiziert wird, hat dieser Benutzer Zugriff auf die Methoden, die in der Integritätsbedingung angegeben sind. Benutzer müssen dieser Rolle in den Anwendungsbindungen nicht zugeordnet werden. Beispiel:
      <security-constraint id="SecurityConstraint_1">
      		<web-resource-collection id="WebResourceCollection_1">
      			<web-resource-name>Protected with ** role</web-resource-name>
      			<url-pattern>/AnyAuthSecurityConstraint</url-pattern>
      								<http-method>GET</http-method>
      								<http-method>POST</http-method>
      		</web-resource-collection>
      		<auth-constraint id="AuthConstraint_1">
      			<role-name>**</role-name>
      		</auth-constraint>
      </security-constraint>

      Wenn die Methode isUserInRole() mit dem Rollennamen ** aufgerufen wird, gibt isUserInRole() bei der Authentifizierung des Benutzers den Wert true zurück. Wenn ** eine definierte Rolle in der Konfiguration in einer Sicherheitsrolle ist, wird es nicht wie das besondere eine authentifizierte Benutzerrolle betrachtet. Der Benutzer muss dieser Rolle in Anwendungsbindungen zugeordnet sein, damit isUserInRole den Wert true zurückgibt.

    • Geben Sie das Flag deny-uncovered-http-methods in Dateien des Typs web.xml an.
      Wenn das Element deny-uncovered-http-methods in der Datei web.xml angegeben ist, weist der Container alle ungesicherten HTTP-Methoden, die nicht in der kombinierten Integritätsbedingung für die Sicherheit aufgezählt werden, für ein URL-Muster, das am meisten mit dem Anforderungs-URL übereinstimmt, zurück. Es wird ein Statuscode des Typs 403 (SC_FORBIDDEN) zurückgegeben. Beispiel:
      <servlet-mapping id="ServletMapping_1">
      		<servlet-name>MyServlet</servlet-name>
      		<url-pattern>/MyURLPattern</url-pattern>
      </servlet-mapping>
      
      <deny-uncovered-http-methods/>
      
      <!-- SECURITY CONSTRAINTS -->
      <security-constraint id="SecurityConstraint_1">
      		<web-resource-collection id="WebResourceCollection_1">
      			<web-resource-name>Protected with Employee or Manager roles</web-resource-name>
      			<url-pattern>/MyURLPattern</url-pattern>
      								<http-method>GET</http-method>
      								<http-method>POST</http-method>
      		</web-resource-collection>
      		<auth-constraint id="AuthConstraint_1">
      			<role-name>Employee</role-name> 
      							<role-name>Manager</role-name>
      		</auth-constraint>
      </security-constraint>
      Wenn das Element deny-uncovered-http-methods in der Datei web.xml angegeben ist, wird in der Datei messages.log für jedes URL-Muster in jedem Servlet eine Nachricht protokolliert, in der die nicht gesicherten Methoden aufgeführt und mit dem Hinweis versehen sind, dass sie ungeschützt und nicht zugänglich sind. Beispiel:
      Für die URL MyURLPattern im Servlet MyServlet sind die folgenden HTTP-Methoden ungesichert und nicht zugänglich: zugänglich: DELETE OPTIONS HEAD PUT TRACE
      Wenn das Element deny-uncovered-http-methods nicht in der Datei web.xml angegeben ist, wird in der Datei messages.log für jedes URL-Muster in jedem Servlet eine Nachricht protokolliert, in der alle nicht gesicherten Methoden aufgeführt und mit dem Hinweis versehen sind, dass sie ungeschützt und zugänglich sind. Beispiel:
      Für die URL MyURLPattern im Servlet MyServlet sind die folgenden HTTP-Methoden ungesichert und zugänglich: DELETE OPTIONS HEAD PUT TRACE

Ergebnisse

Sie haben Ihre Anwendung gesichert.

Symbol das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 01.12.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twlp_servlet31
Dateiname: twlp_servlet31.html