ibm-information-center/dist/eclipse/plugins/i5OS.ic.rzamy_5.4.0.1/50/webserv/wsspscee.htm

128 lines
6.2 KiB
HTML
Raw Normal View History

2024-04-02 14:02:31 +00:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<LINK rel="stylesheet" type="text/css" href="../../../rzahg/ic.css">
<title>Envelope Editor</title>
</head>
<BODY>
<!-- Java sync-link -->
<SCRIPT LANGUAGE="Javascript" SRC="../../../rzahg/synch.js" TYPE="text/javascript"></SCRIPT>
<h6><A NAME="wsspscee">Envelope Editor</A></h6>
<p>The Envelope Editor is a component that can be plugged into the Apache SOAP transports. On the
server side, it is embedded into the RPC and MessageRouterServlets. On the client side, it is embedded
in the FilterTransport, which implements the SOAPTransport interface. WebSphere Application Server -
Express provides a PluggableEnvelopeEditor, which you can use to plug in some editing components such
as signature and verification.</p>
<p><strong>Description of the factory class to instantiate Envelope Editors</strong></p>
<p>A factory class creates Envelope Editors at run time. The factory class is called DSigFactory. The
DSigFactory class uses an editor configuration file, and creates an instance of Envelope Editor. The
factory class and the configuration file are specified in
/QIBM/UserData/WebASE/ASE5/<em>instance_name</em>/installedApps/<em>node_name</em>/
<br><em>earfile_name</em>/soapsec.war/WEB-INF/web.xml, where <em>instance_name</em> is the root
directory of your WebSphere
Application Server - Express instance.</p>
<p>The factory class is described under the &lt;servlet id=&quot;Servlet_17&quot;&gt; and &lt;servlet
id=&quot;Servlet_2&quot;&gt; elements:</p>
<pre>
&lt;display-name&gt;Apache-SOAP-SEC&lt;/display-name&gt;
&lt;description&gt;SOAP Security Enablement WAR&lt;/description&gt;
&lt;servlet id=&quot;Servlet_1&quot;&gt;
&lt;servlet-name&gt;rpcrouter&lt;/servlet-name&gt;
&lt;display-name&gt;Apache-SOAP Secure RPC Router&lt;/display-name&gt;
&lt;description&gt;no description&lt;/description&gt;
&lt;servlet-class&gt;com.ibm.soap.server.http.WASRPCRouterServlet&lt;/servlet-class&gt;
&lt;init-param id=&quot;InitParam_1&quot;&gt;
&lt;param-name&gt;faultListener&lt;/param-name&gt;
&lt;param-value&gt;org.apache.soap.server.DOMFaultListener&lt;/param-value&gt;
&lt;/init-param&gt;
&lt;init-param id=&quot;InitParam_2&quot;&gt;
&lt;param-name&gt;EnvelopeEditorFactory&lt;/param-name&gt;
&lt;param-value&gt;com.ibm.soap.dsig.dsigfactory.DSigFactory&lt;/param-value&gt;
&lt;/init-param&gt;
&lt;init-param id=&quot;InitParam_3&quot;&gt;
&lt;param-name&gt;SOAPEvnelopeEditorConfigFilePath&lt;/param-name&gt;
&lt;param-value&gt;conf/sv-editor-config.xml&lt;/param-value&gt;
&lt;/init-param&gt;
&lt;/servlet&gt;
&lt;servlet id=&quot;Servlet_2&quot;&gt;
&lt;servlet-name&gt;messagerouter&lt;/servlet-name&gt;
&lt;display-name&gt;Apache-SOAP Secure Message Router&lt;/display-name&gt;
&lt;servlet-class&gt;com.ibm.soap.server.http.WASMessageRouterServlet&lt;/servlet-class&gt;
&lt;init-param id=&quot;InitParam_5&quot;&gt;
&lt;param-name&gt;faultListener&lt;/param-name&gt;
&lt;param-value&gt;org.apache.soap.server.DOMFaultListener&lt;/param-value&gt;
&lt;/init-param&gt;
&lt;init-param id=&quot;InitParam_6&quot;&gt;
&lt;param-name&gt;EnvelopeEditorFactory&lt;/param-name&gt;
&lt;param-value&gt;com.ibm.soap.dsig.dsigfactory.DSigFactory&lt;/param-value&gt;
&lt;/init-param&gt;
&lt;init-param id=&quot;InitParam_7&quot;&gt;
&lt;param-name&gt;SOAPEvnelopeEditorConfigFilePath&lt;/param-name&gt;
&lt;param-value&gt;conf/sv-editor-config.xml&lt;/param-value&gt;
&lt;/init-param&gt;
&lt;/servlet&gt;
</pre>
<p>EnvelopeEditorFactory is a factory class. SOAPEnvelopeEditorConfigFilePath is a configuration file
for Envelope Editor.</p>
<p><strong>Enabling Envelope Editor</strong></p>
<p>On the client side, the configuration of the Envelope Editor is explicitly programmed. On the
server side, the transport hook is enabled automatically in the soapsec.war file when you add the init
parameter to the RPC and Message router servlets for the EnvelopeEditorFactory. This entry in the
web.xml for the soapsec.war file is added automatically when you enable an application for SOAP and
indicate the service is secure.</p>
<p><strong>Configuration file of Envelope Editor</strong></p>
<p>The configuration file, sv-editor-config.xml is located in
/QIBM/UserData/WebASE/ASE5/instance_name/installedApps/<em>node_name</em>/
<br><em>ear_file_name</em>/soapsec.war/conf/sv-editor-config.xml, where <em>earfile_name</em> is the
name of your Enterprise Archive (EAR) file. Under the SOAPEnvelopeEditorConfig element, there are two
optional elements: incoming and outgoing. The incoming and outgoing element definitions look like this
example:</p>
<pre>
&lt;incoming class=&quot;com.ibm.xml.soap.security.dsig.SOAPVerifier&quot;&gt;
&lt;init-param&gt;
&lt;param-name&gt;filename&lt;/param-name&gt;
&lt;param-value&gt;conf/sv-ver-config.xml&lt;/param-value&gt;
&lt;/init-param&gt;
&lt;/incoming&gt;
&lt;outgoing class=&quot;com.ibm.xml.soap.security.dsig.SOAPSigner&quot;&gt;
&lt;init-param&gt;
&lt;param-name&gt;filename&lt;/param-name&gt;
&lt;param-value&gt;conf/sv-sig-config.xml&lt;/param-value&gt;
&lt;/init-param&gt;
&lt;/outgoing&gt;
</pre>
<p>The incoming element specifies a class that edits incoming messages and a configuration file for the
editing class. The outgoing element specifies a class for outgoing message and a configuration
file.</p>
<p><strong>Changing the configuration</strong></p>
<p>You do not have a digital signature for response messages if you remove the outgoing element from
/QIBM/UserData/WebASE/ASE5/<em>instance_name</em>/installedApps/<em>node_name</em>/
<br><em>earfile_name</em>/soapsec.war/conf/sv-editor-config.xml and remove the incoming element from
/QIBM/UserData/WebASE/ASE5/<em>instance_name</em>/installedApps/<em>node_name</em>/<br>
<em>ear_file_name</em>/soapsec.war/conf/cl-editor- config.xml, where <em>ear_file_name</em> is the name
of your Enterprise Archive (EAR) file.</p>
<p><strong>Note: </strong>Examples may be wrapped for display purposes.</p>
</body>
</html>