Author: ruchithf
Date: Tue Nov 6 14:34:00 2007
New Revision: 592573
URL: http://svn.apache.org/viewvc?rev=592573&view=rev
Log:
Applied patch in RAMPART-99
Thanks Nandana
Modified:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/RampartConfigBuilder.java
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/model/RampartConfig.java
webservices/rampart/trunk/java/src/site/resources/rampart-config.xsd
webservices/rampart/trunk/java/src/site/resources/rampartconfig-guide.html
Modified:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java?rev=592573&r1=592572&r2=592573&view=diff
==============================================================================
---
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java
(original)
+++
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java
Tue Nov 6 14:34:00 2007
@@ -219,8 +219,17 @@
RampartUtil.setKeyIdentifierType(rpd, sig, token);
- //Get the user
- String user = rpd.getRampartConfig().getUser();
+ String user = null;
+
+ // Get the user - First check whether userCertAlias present
+ user = rpd.getRampartConfig().getUserCertAlias();
+
+ // If userCertAlias is not present, use user property as Alias
+
+ if (user == null) {
+ user = rpd.getRampartConfig().getUser();
+ }
+
String password = null;
if(user != null && !"".equals(user)) {
Modified:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/RampartConfigBuilder.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/RampartConfigBuilder.java?rev=592573&r1=592572&r2=592573&view=diff
==============================================================================
---
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/RampartConfigBuilder.java
(original)
+++
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/RampartConfigBuilder.java
Tue Nov 6 14:34:00 2007
@@ -40,6 +40,12 @@
if (childElement != null) {
rampartConfig.setUser(childElement.getText().trim());
}
+
+ childElement = element.getFirstChildWithName(new QName(
+ RampartConfig.NS, RampartConfig.USER_CERT_ALIAS_LN));
+ if (childElement != null) {
+ rampartConfig.setUserCertAlias(childElement.getText().trim());
+ }
childElement = element.getFirstChildWithName(new QName(
RampartConfig.NS, RampartConfig.ENCRYPTION_USER_LN));
Modified:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/model/RampartConfig.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/model/RampartConfig.java?rev=592573&r1=592572&r2=592573&view=diff
==============================================================================
---
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/model/RampartConfig.java
(original)
+++
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/model/RampartConfig.java
Tue Nov 6 14:34:00 2007
@@ -70,6 +70,8 @@
public final static String RAMPART_CONFIG_LN = "RampartConfig";
public final static String USER_LN = "user";
+
+ public final static String USER_CERT_ALIAS_LN = "userCertAlias";
public final static String ENCRYPTION_USER_LN = "encryptionUser";
@@ -92,6 +94,8 @@
public final static String SSL_CONFIG = "sslConfig";
private String user;
+
+ private String userCertAlias;
private String encryptionUser;
@@ -184,6 +188,14 @@
public void setUser(String user) {
this.user = user;
}
+
+ public String getUserCertAlias() {
+ return userCertAlias;
+ }
+
+ public void setUserCertAlias(String userCertAlias) {
+ this.userCertAlias = userCertAlias;
+ }
public QName getName() {
return new QName(NS, RAMPART_CONFIG_LN);
@@ -213,6 +225,12 @@
if (getUser() != null) {
writer.writeStartElement(NS, USER_LN);
writer.writeCharacters(getUser());
+ writer.writeEndElement();
+ }
+
+ if (getUserCertAlias() != null) {
+ writer.writeStartElement(NS, USER_CERT_ALIAS_LN);
+ writer.writeCharacters(getUserCertAlias());
writer.writeEndElement();
}
Modified: webservices/rampart/trunk/java/src/site/resources/rampart-config.xsd
URL:
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/src/site/resources/rampart-config.xsd?rev=592573&r1=592572&r2=592573&view=diff
==============================================================================
--- webservices/rampart/trunk/java/src/site/resources/rampart-config.xsd
(original)
+++ webservices/rampart/trunk/java/src/site/resources/rampart-config.xsd Tue
Nov 6 14:34:00 2007
@@ -7,6 +7,7 @@
<xs:complexType>
<xs:sequence>
<xs:element name="user" type="xs:string"/>
+ <xs:element name="userCertAlias"
type="xs:string" minOccurs="0"/>
<xs:element name="encryptionUser"
type="xs:string" minOccurs="0"/>
<xs:element name="passwordCallbackClass"
type="xs:string" minOccurs="0"/>
<xs:element name="signatureCrypto"
type="ramp:crypto" minOccurs="0"/>
Modified:
webservices/rampart/trunk/java/src/site/resources/rampartconfig-guide.html
URL:
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/src/site/resources/rampartconfig-guide.html?rev=592573&r1=592572&r2=592573&view=diff
==============================================================================
--- webservices/rampart/trunk/java/src/site/resources/rampartconfig-guide.html
(original)
+++ webservices/rampart/trunk/java/src/site/resources/rampartconfig-guide.html
Tue Nov 6 14:34:00 2007
@@ -97,15 +97,17 @@
<table class="bodyTable"><tbody>
<tr
class="a"><td><b>Parameter</b></td><td><b>Description</b></td><td><b>Example</b></td></tr>
- <tr class="b"><td>user</td><td>The user's name</td><td>Set alias of the
key to be used to sign<br></br>
+ <tr class="b"><td>user</td><td>The user's name</td><td>Set username of
UsernameToken to be used <br></br>
<user> bob</user></td></tr>
- <tr class="a"><td>encryptionUser</td><td>The user's name for
encryption.</td><td><br></br>
+ <tr class="a"><td>userCertAlias</td><td>The user's cert alias</td><td>Set
alias of the key to be used to sign<br></br>
+ <userCertAlias> bob</userCertAlias></td></tr>
+ <tr class="b"><td>encryptionUser</td><td>The user's name for
encryption.</td><td><br></br>
<encryptionUser>alice</encryptionUser></td></tr>
- <tr class="b"><td>passwordCallbackClass</td><td>Callback class used to
provide the password required to create the
+ <tr class="a"><td>passwordCallbackClass</td><td>Callback class used to
provide the password required to create the
UsernameToken or to sign the
message</td><td><passwordCallbackClass>
org.apache.axis2.security.PWCallback</passwordCallbackClass></td></tr>
- <tr class="a"><td>signatureCrypto</td><td>properties to needed perform
signature, such as crypto
+ <tr class="b"><td>signatureCrypto</td><td>properties to needed perform
signature, such as crypto
provider, keystore and its password</td><td>
<signatureCrypto><br/>
<crypto
provider="org.apache.ws.security.components.crypto.Merlin"><br>
@@ -114,14 +116,14 @@
<property
name="org.apache.ws.security.crypto.merlin.keystore.password">apache</property><br>
</crypto><br>
<signatureCrypto></td></tr>
- <tr class="b"><td>encryptionCypto</td><td>properties to needed perform
signature, such as crypto
+ <tr class="a"><td>encryptionCypto</td><td>properties to needed perform
signature, such as crypto
provider, keystore and its
password</td><td><encryptionCypto>....crypto element
......</encryptionCypto></td></tr>
- <tr class="a"><td>decryptionCrypto</td><td>properties to needed perform
signature, such as crypto
+ <tr class="b"><td>decryptionCrypto</td><td>properties to needed perform
signature, such as crypto
provider, keystore and its
password</td><td><decryptionCrypto>....crypto element
......</decryptionCrypto></td></tr>
- <tr class="b"><td>timestampTTL</td><td>Time to live of Timestamp</td><td>The
default timestamp time to live is 300 seconds</td></tr>
- <tr class="a"><td>timestampMaxSkew</td><td>The maximum tolerence limit for
timeskew of the timestamp</td><td>Rampart allows timestamps created slightly
ahead of the reciever's time.<br/> This parameter allows to specify the
tolerence limit</td></tr>
- <tr class="b"><td>tokenStoreClass</td><td></td><td></td></tr>
- <tr class="a"><td>sslConfig</td><td>SSL Configuration need for
Transportbinding</td><td>Can specify the properties such as
"javax.net.ssl.trustStore" and "javax.net.ssl.trustStorePassword". Please see
below for more information.</td></tr>
+ <tr class="a"><td>timestampTTL</td><td>Time to live of Timestamp</td><td>The
default timestamp time to live is 300 seconds</td></tr>
+ <tr class="b"><td>timestampMaxSkew</td><td>The maximum tolerence limit for
timeskew of the timestamp</td><td>Rampart allows timestamps created slightly
ahead of the reciever's time.<br/> This parameter allows to specify the
tolerence limit</td></tr>
+ <tr class="a"><td>tokenStoreClass</td><td></td><td></td></tr>
+ <tr class="b"><td>sslConfig</td><td>SSL Configuration need for
Transportbinding</td><td>Can specify the properties such as
"javax.net.ssl.trustStore" and "javax.net.ssl.trustStorePassword". Please see
below for more information.</td></tr>
</tbody></table>
<h3>Crypto Provider</h3>
<p>org.apache.ws.security.crypto.provider defines the implementation of