31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper<?xml version="1.0" encoding="ISO-8859-1"?>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper<!--
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper Copyright (c) 2008 Sun Microsystems Inc. All Rights Reserved
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper The contents of this file are subject to the terms
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper of the Common Development and Distribution License
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper (the License). You may not use this file except in
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper compliance with the License.
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper You can obtain a copy of the License at
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper https://opensso.dev.java.net/public/CDDLv1.0.html or
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper opensso/legal/CDDLv1.0.txt
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper See the License for the specific language governing
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper permission and limitations under the License.
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper When distributing Covered Code, include this CDDL
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper Header Notice in each file and include the License file
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper at opensso/legal/CDDLv1.0.txt.
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper If applicable, add the following below the CDDL Header,
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper with the fields enclosed by brackets [] replaced by
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper your own identifying information:
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper "Portions Copyrighted [year] [name of copyright owner]"
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper $Id: web.xml,v 1.1 2008/11/21 22:21:52 leiming Exp $
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper-->
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper<!--
dca1e5e05c4dc49f6ce1ceb50100476adc3281b1Mark de Reeper Portions Copyrighted 2011-2013 ForgeRock AS
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper-->
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" id="WebApp_agentsample">
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <display-name>
dca1e5e05c4dc49f6ce1ceb50100476adc3281b1Mark de Reeper OpenAM J2EE Policy Agent Sample Application
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </display-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <description>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper An application to demonstrate the features of J2EE Policy Agents.
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </description>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <filter id="Filter_PolicyAgent">
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <description>J2EE Policy Agent Filter</description>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <display-name>Agent</display-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <filter-name>Agent</filter-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <filter-class>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper com.sun.identity.agents.filter.AmAgentFilter
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </filter-class>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </filter>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <filter-mapping id="FilterMapping_PolicyAgent">
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <filter-name>Agent</filter-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <url-pattern>/*</url-pattern>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </filter-mapping>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet id="Servlet_ProtectedServlet">
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <description>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper A Servlet protected by web-tier declarative security
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper constraints and requires the user to be in the group
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper manager for access.
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </description>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <display-name>ProtectedServlet</display-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-name>ProtectedServlet</servlet-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-class>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper com.sun.identity.agents.sample.ProtectedServlet
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet-class>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet id="Servlet_ProtectedCallerServlet">
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <description>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper A Servlet that accesses an EJB which is protected
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper by a declarative constraint that requires the user
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper to be in the group employee for access.
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </description>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <display-name>PotectedCallerServlet</display-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-name>ProtectedCallerServlet</servlet-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-class>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper com.sun.identity.agents.sample.ProtectedCallerServlet
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet-class>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet id="Servlet_SecurityAwareServlet">
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <description>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper A Servlet that invokes J2EE Security APIs.
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </description>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <display-name>SecurityAwareServlet</display-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-name>SecurityAwareServlet</servlet-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-class>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper com.sun.identity.agents.sample.SecurityAwareServlet
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet-class>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <security-role-ref>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <role-name>MANAGER_ROLE</role-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <role-link>MANAGER_ROLE</role-link>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </security-role-ref>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <security-role-ref>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <role-name>EMPLOYEE_ROLE</role-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <role-link>EMPLOYEE_ROLE</role-link>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </security-role-ref>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet id="Servlet_InvokerServlet">
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <description>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper A Servlet that accesses an EJB which in turn
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper invokes security APIs available in the EJB tier.
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </description>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <display-name>InvokerServlet</display-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-name>InvokerServlet</servlet-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-class>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper com.sun.identity.agents.sample.InvokerServlet
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet-class>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet id="Servlet_URLPolicyServlet">
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <description>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper A Servlet that is protected by a URL policy
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper which requires the user to be in LDAP Group
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper called customer.
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </description>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <display-name>URLPolicyServlet</display-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-name>URLPolicyServlet</servlet-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-class>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper com.sun.identity.agents.sample.URLPolicyServlet
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet-class>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-mapping>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-name>ProtectedServlet</servlet-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <url-pattern>/protectedservlet</url-pattern>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet-mapping>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-mapping>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-name>ProtectedCallerServlet</servlet-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <url-pattern>/protectedcallerservlet</url-pattern>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet-mapping>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-mapping>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-name>SecurityAwareServlet</servlet-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <url-pattern>/securityawareservlet</url-pattern>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet-mapping>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-mapping>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-name>InvokerServlet</servlet-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <url-pattern>/invokerservlet</url-pattern>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet-mapping>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-mapping>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <servlet-name>URLPolicyServlet</servlet-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <url-pattern>/urlpolicyservlet</url-pattern>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </servlet-mapping>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <session-config>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <session-timeout>54</session-timeout>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </session-config>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <welcome-file-list>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <welcome-file>index.html</welcome-file>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </welcome-file-list>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <error-page>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <error-code>403</error-code>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <location>/authentication/accessdenied.html</location>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </error-page>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <error-page>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <error-code>404</error-code>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <location>/public/notfound.html</location>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </error-page>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <security-constraint>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <web-resource-collection>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <web-resource-name>Protected Servlet</web-resource-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <url-pattern>/protectedservlet</url-pattern>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </web-resource-collection>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <auth-constraint>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <role-name>MANAGER_ROLE</role-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </auth-constraint>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </security-constraint>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <security-constraint>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <web-resource-collection>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <web-resource-name>Security Aware Servlets</web-resource-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <url-pattern>/securityawareservlet</url-pattern>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </web-resource-collection>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <auth-constraint>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <role-name>MANAGER_ROLE</role-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <role-name>EMPLOYEE_ROLE</role-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </auth-constraint>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </security-constraint>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <security-constraint>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <web-resource-collection>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <web-resource-name>Security Aware Servlets</web-resource-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <url-pattern>/invokerservlet</url-pattern>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <url-pattern>/protectedcallerservlet</url-pattern>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </web-resource-collection>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <auth-constraint>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <role-name>EMPLOYEE_ROLE</role-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </auth-constraint>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </security-constraint>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <login-config>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <auth-method>FORM</auth-method>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <form-login-config>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <form-login-page>/authentication/login.html</form-login-page>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <form-error-page>/authentication/accessdenied.html</form-error-page>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </form-login-config>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </login-config>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <security-role id="SR_MANAGER_ROLE">
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <role-name>MANAGER_ROLE</role-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </security-role>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <security-role id="SR_EMPLOYEE_ROLE">
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper <role-name>EMPLOYEE_ROLE</role-name>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper </security-role>
31734da27b3f913bfb1da241a2e2571f33ab4629Mark de Reeper</web-app>