Author: sguilhen(a)redhat.com
Date: 2009-07-24 18:49:12 -0400 (Fri, 24 Jul 2009)
New Revision: 658
Added:
identity-federation/trunk/jboss-identity-webapps/jboss-sts/
identity-federation/trunk/jboss-identity-webapps/jboss-sts/pom.xml
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/resources/
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/resources/jboss-sts.xml
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/resources/sts_keystore.jks
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/jboss-web.xml
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/jboss-wsse-server.xml
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/lib/
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/web.xml
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/wsdl/
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/wsdl/JBossSTS.wsdl
Modified:
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/util/XMLSignatureUtil.java
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/wstrust/WSTrustConstants.java
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/wstrust/WSTrustJAXBFactory.java
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/wstrust/plugins/saml/SAMLUtil.java
identity-federation/trunk/jboss-identity-webapps/pom.xml
Log:
JBID-85: added a webapp to identity-federation that creates a jboss-sts war file containig
sample configuration files
Modified:
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/util/XMLSignatureUtil.java
===================================================================
---
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/util/XMLSignatureUtil.java 2009-07-23
21:24:05 UTC (rev 657)
+++
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/util/XMLSignatureUtil.java 2009-07-24
22:49:12 UTC (rev 658)
@@ -191,7 +191,7 @@
PublicKey publicKey = keyPair.getPublic();
DOMSignContext dsc = new DOMSignContext(signingKey, doc.getDocumentElement());
- dsc.putNamespacePrefix(XMLSignature.XMLNS, "ds");
+// dsc.putNamespacePrefix(XMLSignature.XMLNS, "ds");
DigestMethod digestMethodObj = fac.newDigestMethod(digestMethod, null);
Transform transform = fac.newTransform(Transform.ENVELOPED,
Modified:
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/wstrust/WSTrustConstants.java
===================================================================
---
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/wstrust/WSTrustConstants.java 2009-07-23
21:24:05 UTC (rev 657)
+++
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/wstrust/WSTrustConstants.java 2009-07-24
22:49:12 UTC (rev 658)
@@ -39,9 +39,9 @@
public static final String VALIDATE_REQUEST = BASE_NAMESPACE + "Validate";
// WS-Trust validation constants.
- public static final String STATUS_TYPE = BASE_NAMESPACE + "/RSTR/Status";
- public static final String STATUS_CODE_VALID = BASE_NAMESPACE +
"/status/valid";
- public static final String STATUS_CODE_INVALID = BASE_NAMESPACE +
"/status/invalid";
+ public static final String STATUS_TYPE = BASE_NAMESPACE + "RSTR/Status";
+ public static final String STATUS_CODE_VALID = BASE_NAMESPACE +
"status/valid";
+ public static final String STATUS_CODE_INVALID = BASE_NAMESPACE +
"status/invalid";
// WSS namespaces values.
public static final String WSA_NS = "http://www.w3.org/2005/08/addressing";
Modified:
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/wstrust/WSTrustJAXBFactory.java
===================================================================
---
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/wstrust/WSTrustJAXBFactory.java 2009-07-23
21:24:05 UTC (rev 657)
+++
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/wstrust/WSTrustJAXBFactory.java 2009-07-24
22:49:12 UTC (rev 658)
@@ -116,7 +116,8 @@
public BaseRequestSecurityToken parseRequestSecurityToken(Source request)
{
// if the request contains a validate, cancel, or renew target, we must preserve it
from JAXB unmarshalling.
- Document document = (Document) ((DOMSource) request).getNode();
+ Node documentNode = ((DOMSource) request).getNode();
+ Document document = documentNode instanceof Document ? (Document) documentNode :
documentNode.getOwnerDocument();
Element targetElement = this.getValidateOrRenewOrCancelTarget(document);
try
@@ -124,7 +125,7 @@
Object object = this.unmarshaller.unmarshal(request);
if (object instanceof JAXBElement)
{
- JAXBElement<?> element = (JAXBElement<?>)
unmarshaller.unmarshal(request);
+ JAXBElement<?> element = (JAXBElement<?>) object;
if (element.getDeclaredType().equals(RequestSecurityTokenType.class))
{
RequestSecurityToken parsedRequest = new
RequestSecurityToken((RequestSecurityTokenType) element
@@ -167,7 +168,8 @@
{
// if the response contains an issued token, we must preserve it from the JAXB
unmarshalling.
Element tokenElement = null;
- Document document = (Document) ((DOMSource) response).getNode();
+ Node documentNode = ((DOMSource) response).getNode();
+ Document document = documentNode instanceof Document ? (Document) documentNode :
documentNode.getOwnerDocument();
Node requestedTokenNode = this.findNodeByNameNS(document,
"RequestedSecurityToken",
WSTrustConstants.BASE_NAMESPACE);
if (requestedTokenNode != null)
Modified:
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/wstrust/plugins/saml/SAMLUtil.java
===================================================================
---
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/wstrust/plugins/saml/SAMLUtil.java 2009-07-23
21:24:05 UTC (rev 657)
+++
identity-federation/trunk/jboss-identity-fed-api/src/main/java/org/jboss/identity/federation/api/wstrust/plugins/saml/SAMLUtil.java 2009-07-24
22:49:12 UTC (rev 658)
@@ -31,6 +31,7 @@
import org.jboss.identity.federation.core.util.JAXBUtil;
import org.jboss.identity.federation.saml.v2.assertion.AssertionType;
import org.jboss.identity.federation.saml.v2.assertion.ObjectFactory;
+import org.w3c.dom.DOMConfiguration;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
@@ -68,6 +69,12 @@
Marshaller marshaller =
JAXBUtil.getMarshaller("org.jboss.identity.federation.saml.v2.assertion");
marshaller.marshal(new ObjectFactory().createAssertion(assertion), result);
+ // normalize the document to remove unused namespaces.
+ DOMConfiguration docConfig = document.getDomConfig();
+ docConfig.setParameter("namespaces", Boolean.TRUE);
+ docConfig.setParameter("namespace-declarations", Boolean.FALSE);
+ document.normalizeDocument();
+
return document.getDocumentElement();
}
Property changes on: identity-federation/trunk/jboss-identity-webapps/jboss-sts
___________________________________________________________________
Name: svn:ignore
+ target
Added: identity-federation/trunk/jboss-identity-webapps/jboss-sts/pom.xml
===================================================================
--- identity-federation/trunk/jboss-identity-webapps/jboss-sts/pom.xml
(rev 0)
+++ identity-federation/trunk/jboss-identity-webapps/jboss-sts/pom.xml 2009-07-24 22:49:12
UTC (rev 658)
@@ -0,0 +1,39 @@
+<project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.identity</groupId>
+ <artifactId>jboss-identity-federation-webapps</artifactId>
+ <version>1.0.0.alpha4-SNAPSHOT</version>
+ <relativePath>../</relativePath>
+ </parent>
+
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>jboss-sts</artifactId>
+ <packaging>war</packaging>
+ <name>JBoss Identity Federation Security Token Service</name>
+ <
url>http://labs.jboss.org/portal/jbosssecurity/</url>
+ <description>JBoss Identity Samples contains the samples for Federated Identity
Needs.</description>
+ <licenses>
+ <license>
+ <name>lgpl</name>
+ <
url>http://repository.jboss.com/licenses/lgpl.txt</url>
+ </license>
+ </licenses>
+ <organization>
+ <name>JBoss Inc.</name>
+ <url>http://www.jboss.org</url>
+ </organization>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-war-plugin</artifactId>
+ <version>2.0.2</version>
+ <configuration>
+ <warName>jboss-sts</warName>
+ <!--webappDirectory>${basedir}/resources/</webappDirectory>
+ <warSourceExcludes>WEB-INF/lib/*.jar</warSourceExcludes-->
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Added:
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/resources/jboss-sts.xml
===================================================================
---
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/resources/jboss-sts.xml
(rev 0)
+++
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/resources/jboss-sts.xml 2009-07-24
22:49:12 UTC (rev 658)
@@ -0,0 +1,18 @@
+<JBossSTS xmlns="urn:jboss:identity-federation:config:1.0"
+ STSName="JBossSTS" TokenTimeout="7200"
EncryptToken="true">
+ <KeyProvider
ClassName="org.jboss.identity.federation.bindings.tomcat.KeyStoreKeyManager">
+ <Auth Key="KeyStoreURL" Value="sts_keystore.jks"/>
+ <Auth Key="KeyStorePass" Value="testpass"/>
+ <Auth Key="SigningKeyAlias" Value="sts"/>
+ <Auth Key="SigningKeyPass" Value="keypass"/>
+ <ValidatingAlias
Key="http://services.testcorp.org/provider1"
Value="service1"/>
+ </KeyProvider>
+ <TokenProviders>
+ <TokenProvider
ProviderClass="org.jboss.identity.federation.api.wstrust.plugins.saml.SAML20TokenProvider"
+
TokenType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profi...
+ </TokenProviders>
+ <ServiceProviders>
+ <ServiceProvider
Endpoint="http://services.testcorp.org/provider1"
TokenType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profi...
+ TruststoreAlias="service1"/>
+ </ServiceProviders>
+</JBossSTS>
Added:
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/resources/sts_keystore.jks
===================================================================
(Binary files differ)
Property changes on:
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/resources/sts_keystore.jks
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added:
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/jboss-web.xml
===================================================================
---
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/jboss-web.xml
(rev 0)
+++
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/jboss-web.xml 2009-07-24
22:49:12 UTC (rev 658)
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<jboss-web>
+ <security-domain>java:/jaas/jmx-console</security-domain>
+</jboss-web>
Added:
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/jboss-wsse-server.xml
===================================================================
---
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/jboss-wsse-server.xml
(rev 0)
+++
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/jboss-wsse-server.xml 2009-07-24
22:49:12 UTC (rev 658)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<jboss-ws-security
xmlns="http://www.jboss.com/ws-security/config"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+
xsi:schemaLocation="http://www.jboss.com/ws-security/config
http://www.jboss.com/ws-security/schema/jboss-ws-security_1_0.xsd">
+ <config>
+ <requires/>
+ </config>
+</jboss-ws-security>
Added:
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/web.xml
===================================================================
---
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/web.xml
(rev 0)
+++
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/web.xml 2009-07-24
22:49:12 UTC (rev 658)
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<!DOCTYPE web-app PUBLIC
+ "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
+ "http://java.sun.com/dtd/web-app_2_3.dtd">
+
+<web-app>
+ <servlet>
+ <servlet-name>JBossSTS</servlet-name>
+
<servlet-class>org.jboss.identity.federation.bindings.jboss.wstrust.JBossSTS</servlet-class>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>JBossSTS</servlet-name>
+ <url-pattern>/*</url-pattern>
+ </servlet-mapping>
+
+ <security-constraint>
+ <web-resource-collection>
+ <web-resource-name>UsernameService</web-resource-name>
+ <url-pattern>/*</url-pattern>
+ <http-method>GET</http-method>
+ <http-method>POST</http-method>
+ </web-resource-collection>
+ <auth-constraint>
+ <role-name>JBossAdmin</role-name>
+ </auth-constraint>
+ </security-constraint>
+
+ <login-config>
+ <auth-method>BASIC</auth-method>
+ <realm-name>JBossSTSRealm</realm-name>
+ </login-config>
+
+ <security-role>
+ <role-name>JBossAdmin</role-name>
+ </security-role>
+
+</web-app>
Added:
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/wsdl/JBossSTS.wsdl
===================================================================
---
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/wsdl/JBossSTS.wsdl
(rev 0)
+++
identity-federation/trunk/jboss-identity-webapps/jboss-sts/src/main/webapp/WEB-INF/wsdl/JBossSTS.wsdl 2009-07-24
22:49:12 UTC (rev 658)
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<wsdl:definitions name="JBossSTS"
targetNamespace="http://org.jboss.identity.trust/sts"
+ xmlns:tns="http://org.jboss.identity.trust/sts"
+
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+
xmlns:wsap10="http://www.w3.org/2006/05/addressing/wsdl"
+
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/">
+ <wsdl:types>
+ <xs:schema targetNamespace="http://org.jboss.identity.trust/sts"
xmlns:tns="http://org.jboss.identity.trust/sts" version="1.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:complexType name="MessageBody">
+ <xs:sequence>
+ <xs:any minOccurs="0" maxOccurs="unbounded"
namespace="##any"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:schema>
+ </wsdl:types>
+ <wsdl:message name="RequestSecurityToken">
+ <wsdl:part name="rstMessage" element="tns:MessageBody"/>
+ </wsdl:message>
+ <wsdl:message name="RequestSecurityTokenResponse">
+ <wsdl:part name="rstrMessage" element="tns:MessageBody"/>
+ </wsdl:message>
+ <wsdl:portType name="SecureTokenService">
+ <wsdl:operation name="IssueToken">
+ <wsdl:input
wsap10:Action="http://schemas.xmlsoap.org/ws/2005/02/trust/RST/Issue...
message="tns:RequestSecurityToken"/>
+ <wsdl:output
wsap10:Action="http://schemas.xmlsoap.org/ws/2005/02/trust/RSTR/Issu...
message="tns:RequestSecurityTokenResponse"/>
+ </wsdl:operation>
+ </wsdl:portType>
+ <wsdl:binding name="STSBinding"
type="tns:SecureTokenService">
+ <soap12:binding
transport="http://schemas.xmlsoap.org/soap/http"/>
+ <wsdl:operation name="IssueToken">
+ <soap12:operation
soapAction="http://schemas.xmlsoap.org/ws/2005/02/trust/RST/Issue"
style="document"/>
+ <wsdl:input>
+ <soap12:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output>
+ <soap12:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+ <wsdl:service name="JBossSTS">
+ <wsdl:port name="JBossSTSPort" binding="tns:STSBinding">
+ <soap12:address location="http://localhost:8080/jboss-sts"/>
+ </wsdl:port>
+ </wsdl:service>
+</wsdl:definitions>
Modified: identity-federation/trunk/jboss-identity-webapps/pom.xml
===================================================================
--- identity-federation/trunk/jboss-identity-webapps/pom.xml 2009-07-23 21:24:05 UTC (rev
657)
+++ identity-federation/trunk/jboss-identity-webapps/pom.xml 2009-07-24 22:49:12 UTC (rev
658)
@@ -29,5 +29,6 @@
<module>metadata</module>
<module>openid-provider</module>
<module>openid-consumer</module>
+ <module>jboss-sts</module>
</modules>
</project>