阳光小菜鸟 发表于 2013-2-3 11:26:49

axis2+rampart实现WS-Security (三)

UsernameToken authentication
axis2.xml
<axisconfig name="AxisJava2.0"><module ref="rampart" /><parameter name="OutflowSecurity">       <action>         <items>UsernameToken Timestamp</items>         <user>bob</user><passwordCallbackClass>org.apache.rampart.samples.sample02.PWCBHandler</passwordCallbackClass>         </action>      </parameter>
services.xml
<service><operation name="echo">    <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/></operation>    <parameter name="ServiceClass" locked="false">org.apache.rampart.samples.sample02.SimpleService</parameter><module ref="rampart" /><parameter name="InflowSecurity">      <action>          <items>UsernameToken Timestamp</items><passwordCallbackClass>org.apache.rampart.samples.sample02.PWCBHandler</passwordCallbackClass>      </action>      </parameter></service>

UsernameToken authentication with a plain text password
axis2.xml
<axisconfig name="AxisJava2.0"><module ref="rampart" />   <parameter name="OutflowSecurity">       <action>         <items>UsernameToken</items>         <user>bob</user><passwordCallbackClass>org.apache.rampart.samples.sample03.PWCBHandler</passwordCallbackClass>         <passwordType>PasswordText</passwordType>       </action>   </parameter>
services.xml
<service><operation name="echo">   <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/></operation>    <parameter name="ServiceClass" locked="false">org.apache.rampart.samples.sample03.SimpleService</parameter><module ref="rampart" /><parameter name="InflowSecurity">       <action>         <items>UsernameToken</items><passwordCallbackClass>org.apache.rampart.samples.sample03.PWCBHandler</passwordCallbackClass>       </action>   </parameter></service>

Encrypting messages

axis2.xml
<axisconfig name="AxisJava2.0"><module ref="rampart" /><parameter name="OutflowSecurity">       <action>         <items>Encrypt</items>         <encryptionUser>service</encryptionUser>         <encryptionPropFile>client.properties</encryptionPropFile>       </action>   </parameter>   <parameter name="InflowSecurity">       <action>         <items>Encrypt</items><passwordCallbackClass>org.apache.rampart.samples.sample05.PWCBHandler</passwordCallbackClass>         <decryptionPropFile>client.properties</decryptionPropFile>       </action>   </parameter>
services.xml
<service><operation name="echo">   <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/></operation>    <parameter name="ServiceClass" locked="false">org.apache.rampart.samples.sample05.SimpleService</parameter><module ref="rampart" />   <parameter name="InflowSecurity">       <action>         <items>Encrypt</items><passwordCallbackClass>org.apache.rampart.samples.sample05.PWCBHandler</passwordCallbackClass>         <decryptionPropFile>service.properties</decryptionPropFile>       </action>   </parameter><parameter name="OutflowSecurity">       <action>         <items>Encrypt</items>         <encryptionUser>client</encryptionUser>         <encryptionPropFile>service.properties</encryptionPropFile>       </action>   </parameter></service>

Sign and encrypt messages
axis2.xml
<axisconfig name="AxisJava2.0">   <!--Signature and Encryption : Using the request's certificate--><module ref="rampart" />   <parameter name="OutflowSecurity">       <action>         <items>Timestamp Signature Encrypt</items>         <user>client</user><passwordCallbackClass>org.apache.rampart.samples.sample06.PWCBHandler</passwordCallbackClass>         <signaturePropFile>client.properties</signaturePropFile>      <signatureKeyIdentifier>DirectReference</signatureKeyIdentifier>   <encryptionKeyIdentifier>SKIKeyIdentifier</encryptionKeyIdentifier>         <encryptionUser>service</encryptionUser>       </action>   </parameter>   <parameter name="InflowSecurity">       <action>         <items>Timestamp Signature Encrypt</items><passwordCallbackClass>org.apache.rampart.samples.sample06.PWCBHandler</passwordCallbackClass>         <signaturePropFile>client.properties</signaturePropFile>       </action>   </parameter>

services.xml
<service><operation name="echo">   <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/></operation>    <parameter name="ServiceClass" locked="false">org.apache.rampart.samples.sample06.SimpleService</parameter><module ref="rampart" />   <parameter name="InflowSecurity">       <action>         <items>Timestamp Signature Encrypt</items><passwordCallbackClass>org.apache.rampart.samples.sample06.PWCBHandler</passwordCallbackClass>         <signaturePropFile>service.properties</signaturePropFile>       </action>   </parameter>   <parameter name="OutflowSecurity">       <action>         <items>Timestamp Signature Encrypt</items>         <user>service</user><passwordCallbackClass>org.apache.rampart.samples.sample06.PWCBHandler</passwordCallbackClass>         <signaturePropFile>service.properties</signaturePropFile>   <signatureKeyIdentifier>DirectReference</signatureKeyIdentifier>   <encryptionKeyIdentifier>SKIKeyIdentifier</encryptionKeyIdentifier>         <encryptionUser>useReqSigCert</encryptionUser>       </action>   </parameter></service>
页: [1]
查看完整版本: axis2+rampart实现WS-Security (三)