6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper<html>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper<head>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper<!--
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper Copyright (c) 2008 Sun Microsystems Inc. All Rights Reserved
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper The contents of this file are subject to the terms
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper of the Common Development and Distribution License
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper (the License). You may not use this file except in
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper compliance with the License.
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper You can obtain a copy of the License at
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper https://opensso.dev.java.net/public/CDDLv1.0.html or
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper opensso/legal/CDDLv1.0.txt
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper See the License for the specific language governing
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper permission and limitations under the License.
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper When distributing Covered Code, include this CDDL
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper Header Notice in each file and include the License file
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper at opensso/legal/CDDLv1.0.txt.
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper If applicable, add the following below the CDDL Header,
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper with the fields enclosed by brackets [] replaced by
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper your own identifying information:
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper "Portions Copyrighted [year] [name of copyright owner]"
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper $Id: programmaticsecurity.html,v 1.9 2008/08/19 19:14:13 veiming Exp $
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper-->
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper<!--
5c39d8f041417518a02ce2c941d96c2d33b2a364Mark de Reeper Portions Copyrighted 2013 ForgeRock AS.
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper-->
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type" />
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <title>Sample Application</title>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <style type="text/css">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper<!--
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeperbody,td,p,div,span,a,input,big,small{font-family:arial,helvetica,sans-serif}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeperbody,td,p,div,span,a,input{font-size:10pt}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reepersmall,.small,small span,.small span,.small a,small a,div.sitelinks,div.sitelinks a,div.footlinks,div.footlinks a{font-size:9pt}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeperbig,.big,big span,.big span,.big a,big a{font-size:11pt}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeperbody,td,p,div,div.sitelinks a#homelink{color:#333}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeperinput.buttonred{background:#acacac;cursor:hand;color:#FFF;height:1.4em;font-weight:bold;padding:0px;margin:0px;border:0px none #000}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeperinput.medium{width:120px;height:18px}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reepera{text-decoration:none}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reepera:visited{color:#96C}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reepera:link,a.named:visited,div.breadcrumb a:visited,div.sitelinks a:visited,div.footlinks a:visited{color:#594FBF}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reepera:hover{text-decoration:underline}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper.footlinks{padding:7px 0px}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper.toolbar{padding:7px 0px 3px 0px}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper.homenav{padding:7px 0px 0px 0px}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper.homeftr{padding:0px}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper.htitle div{padding:11px 0px 0px 0px}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper.hitemtop div{padding:6px 0px 2px 0px}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper.hitem div{padding:3px 0px 2px 0px}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper.hitemverybottom div{padding:3px 0px 0px 0px}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper.htitle div{font-weight:bold}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper.spot div{padding:6px 0px 6px 0px}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper.spottop div{padding:0px 0px 6px 0px}
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper-->
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </style>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper</head>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper<body>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper<table style="width: 800px; text-align: left;" border="0" cellpadding="2" cellspacing="2">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <tbody>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <tr>
d38436884ea9bb358fbc6af6e5fa63b407e99436Mark de Reeper <td style="background-color: white;"><a href="http://forgerock.com/"><img
d38436884ea9bb358fbc6af6e5fa63b407e99436Mark de Reeper alt="ForgeRock" src="/agentsample/images/logo.png"
d38436884ea9bb358fbc6af6e5fa63b407e99436Mark de Reeper style="width: 156px; height: 104px;"></a><br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
d38436884ea9bb358fbc6af6e5fa63b407e99436Mark de Reeper <td style="text-align: center; vertical-align: middle; font-family: andale sans;">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <span style="font-weight: bold;">J2EE Policy Agent Sample Application</span><br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top; width: 50px;">&nbsp;<br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top; width: 150px;">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <table style="text-align: left; width: 100%;" border="0" cellpadding="0" cellspacing="0">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <tbody>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <tr valign="top">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td class="htitle" style="vertical-align: top; text-align: left;">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <hr class="menutop" size="1">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <div>Sample Application</div>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <hr class="light"> </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top;"> <a href="/agentsample/public/welcome.html">Welcome </a>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <hr class="faint"><a href="/agentsample/public/declarativesecurity.html">J2EE Declarative Security</a>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <hr class="faint">J2EE Security API
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <hr class="faint"> <a href="/agentsample/public/urlpolicy.html">URL Policy Enforcement</a>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <hr class="faint"><a href="/agentsample/jsp/showHttpHeaders.jsp">Show HTTP Headers</a>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <hr class="faint">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td class="htitle" style="vertical-align: top; text-align: left;">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <hr class="menutop" size="1">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <div>Other Resources<br> </div>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <hr class="light"> </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top;">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <a href="http://openam.forgerock.org/docs.html">J2EE Agents Guide</a><br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <hr class="faint">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <a href="http://java.sun.com/j2ee">J2EE Documentation<br></a>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <hr class="faint">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </tbody>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </table>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top;">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <table style="text-align: left; width: 572px; height: 394px;" border="0" cellpadding="2" cellspacing="2">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <tbody>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top; width: 75px; height: 75px;">&nbsp;<br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top; height: 75px;">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <br> <h2>J2EE Security API </h2><br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top; width: 75px; height: 75px;">&nbsp;<br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top; width: 75px;">&nbsp;<br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top;">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <b>Web-Tier Security API</b><br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper The following link points to a Servlet that calls J2EE security APIs
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper available in the web-tier. Click on this link to find out if this
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper Servlet can make security decisions based on your identity:<br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <ul>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <li><a href="/agentsample/securityawareservlet">Invoke Security Aware Servlet</a><br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </li>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </ul>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <b>EJB-Tier Security API</b><br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper The following link points to a Servlet that in turn
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper invokes an EJB which calls J2EE security APIs available in the
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper EJB-tier. Click on this link to find out if this EJB can make security
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper decisions based on your identity:<br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <ul>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <li><a href="/agentsample/invokerservlet">Invoke Security Aware EJB</a></li>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </ul>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper You can also proceed directly to
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <a href="/agentsample/public/urlpolicy.html">URL Policy Enforcement</a>...<br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top; width: 75px;">&nbsp;<br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </tbody>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </table>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top; width: 50px;">&nbsp;<br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top; width: 150px;">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <hr class="menutop"></td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top;">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <hr class="menutop">
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <div style="text-align: right;"></div>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper <td style="vertical-align: top; width: 50px;">&nbsp;<br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </td>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </tr>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper </tbody>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper</table>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper<br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper<br>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper</body>
6406210b71fd4a97800f32f3613eea9b6a6a12ceMark de Reeper</html>