<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
       "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
  <title>Apache Rampart - Release Notes</title>
  <meta name="generator" content="amaya 9.2.2, see http://www.w3.org/Amaya/"
  />
</head>

<body>
<h1>Apache Rampart Release Notes</h1>

<p>This is the 1.2 release of Apache Rampart.</p>

<p>Apache Rampart 1.2 is a toolkit that provides implementations of the WS-Sec*
specifications for Apache Axis 1.2, based on Apache WSS4J 1.5.2 and 
the Apache AXIOM-DOOM 1.2.4 implementation.</p>

<b>What is in this release</b>

<p>There are two main Apache Axis2 modules provided with this release.</p> 
<ul>
<li>rampart-1.2.mar</li>
This provides support for WS-Security and WS-SecureConversation features.
<li>rahas-1.2.mar</li>
This module provides the necessary components to enable SecurityTokenService 
functionality on a service.
</ul>

<p>Apache Rampart 1.2 uses a configuration model based on WS-Policy 
and WS-Security Policy and it is important to note that Apache Rampart 1.0 style 
configuration is also available even though being marked as deprecated.
</p>

<p>Apache Rampart 1.2 can be successfully used with the next Apache Sandesha2 
release targeted towards Apache Axis2 1.2 to configure 
WS-SecureConversation + WS-ReliableMessaging scenarios.</p>
<p>
The rampart module was successfully tested for interoperability with other
WS-Security implementations.</p>

<p>WS - Sec* specifications supported by Apache Rampart are as follows:</p>

<ul>
<li>WS - Security 1.0</li>
<li>WS - Secure Conversation - February 2005</li>
<li>WS - Security Policy - 1.1 - July 2005</li>
<li>WS - Trust - February 2005</li>
<li>WS - Trust - WS-SX spec - EXPERIMENTAL </li>
</ul>




<p>Thank you for using Apache Rampart.</p>

<p></p>

<p>Apache Rampart team</p>

<p></p>

<p></p>

<p></p>

<p></p>

<p></p>

<p></p>
</body>
</html>
