<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC
   "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
   "http://java.sun.com/dtd/web-app_2_3.dtd"
>

<web-app>
   <description>A war that can be run standalone</description>
   <!-- Test inclusion of an external entity
   &empty;
-->
    <servlet>
        <servlet-name>SecureServlet</servlet-name>
        <servlet-class>org.jboss.test.web.servlets.SecureServlet</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>SecureServlet</servlet-name>
        <url-pattern>/restricted/SecureServlet</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>SecureServlet</servlet-name>
        <url-pattern>/unrestricted/SecureServlet</url-pattern>
    </servlet-mapping>

<!-- ### Security -->
    <security-constraint>
        <web-resource-collection>
            <web-resource-name>Restricted</web-resource-name>
            <description>Declarative security tests</description>
            <url-pattern>/restricted/*</url-pattern>
            <http-method>HEAD</http-method>
            <http-method>GET</http-method>
            <http-method>POST</http-method>
            <http-method>PUT</http-method>
            <http-method>DELETE</http-method>
        </web-resource-collection>
        <auth-constraint>
            <description>Only authenticated users can access secure content</description>
            <role-name>AuthorizedUser</role-name>
        </auth-constraint>
        <user-data-constraint>
            <description>no description</description>
            <transport-guarantee>NONE</transport-guarantee>
        </user-data-constraint>
    </security-constraint>

    <login-config>
      <auth-method>FORM</auth-method>
      <realm-name>Principal Tests</realm-name>
      <form-login-config>
        <form-login-page>/restricted/login.html</form-login-page>
        <form-error-page>/restricted/error.html</form-error-page>
      </form-login-config>
    </login-config>

    <security-role>
        <description>A AuthorizedUser is one with a valid username and password</description>
        <role-name>AuthorizedUser</role-name>
    </security-role>

</web-app>
