Author: anil.saldhana(a)jboss.com
Date: 2009-10-12 14:52:32 -0400 (Mon, 12 Oct 2009)
New Revision: 852
Modified:
identity-federation/trunk/jboss-identity-web/src/main/java/org/jboss/identity/federation/web/handlers/saml2/SAML2IssuerTrustHandler.java
identity-federation/trunk/jboss-identity-web/src/test/resources/saml2/logout/idp/WEB-INF/jbid-handlers.xml
identity-federation/trunk/jboss-identity-web/src/test/resources/saml2/logout/idp/WEB-INF/jboss-idfed.xml
identity-federation/trunk/jboss-identity-web/src/test/resources/saml2/post/idp/WEB-INF/jboss-idfed.xml
Log:
JBID-198: saml2 issuer trust handler
Modified:
identity-federation/trunk/jboss-identity-web/src/main/java/org/jboss/identity/federation/web/handlers/saml2/SAML2IssuerTrustHandler.java
===================================================================
---
identity-federation/trunk/jboss-identity-web/src/main/java/org/jboss/identity/federation/web/handlers/saml2/SAML2IssuerTrustHandler.java 2009-10-12
18:39:08 UTC (rev 851)
+++
identity-federation/trunk/jboss-identity-web/src/main/java/org/jboss/identity/federation/web/handlers/saml2/SAML2IssuerTrustHandler.java 2009-10-12
18:52:32 UTC (rev 852)
@@ -29,6 +29,7 @@
import org.jboss.identity.federation.core.config.IDPType;
import org.jboss.identity.federation.core.config.SPType;
import org.jboss.identity.federation.core.config.TrustType;
+import org.jboss.identity.federation.core.exceptions.ConfigurationException;
import org.jboss.identity.federation.core.exceptions.ProcessingException;
import org.jboss.identity.federation.core.saml.v2.exceptions.IssuerNotTrustedException;
import org.jboss.identity.federation.core.saml.v2.interfaces.SAML2HandlerRequest;
@@ -53,11 +54,13 @@
{
if(getType() == HANDLER_TYPE.IDP)
{
- idp.handleRequestType(request, response);
+ idp.handleRequestType(request, response,
+ (IDPType)
this.handlerChainConfig.getParameter(GeneralConstants.CONFIGURATION));
}
else
{
- sp.handleRequestType(request, response);
+ sp.handleRequestType(request, response,
+ (SPType)
this.handlerChainConfig.getParameter(GeneralConstants.CONFIGURATION));
}
}
@@ -66,29 +69,31 @@
{
if(getType() == HANDLER_TYPE.IDP)
{
- idp.handleStatusResponseType(request, response);
+ idp.handleStatusResponseType(request, response,
+ (IDPType)
this.handlerChainConfig.getParameter(GeneralConstants.CONFIGURATION));
}
else
{
- sp.handleStatusResponseType(request, response);
+ sp.handleStatusResponseType(request, response,
+ (SPType)
this.handlerChainConfig.getParameter(GeneralConstants.CONFIGURATION));
}
}
private class IDPTrustHandler
{
- public void handleRequestType(SAML2HandlerRequest request, SAML2HandlerResponse
response) throws ProcessingException
- {
- IDPType idpConfiguration = (IDPType)
request.getOptions().get(GeneralConstants.CONFIGURATION);
+ public void handleRequestType(SAML2HandlerRequest request, SAML2HandlerResponse
response,
+ IDPType idpConfiguration) throws ProcessingException
+ {
String issuer = request.getIssuer().getValue();
trustIssuer(idpConfiguration, issuer);
}
- public void handleStatusResponseType(SAML2HandlerRequest request,
SAML2HandlerResponse response)
+ public void handleStatusResponseType(SAML2HandlerRequest request,
SAML2HandlerResponse response
+ ,IDPType idpConfiguration)
throws ProcessingException
{
- IDPType idpConfiguration = (IDPType)
request.getOptions().get(GeneralConstants.CONFIGURATION);
String issuer = request.getIssuer().getValue();
trustIssuer(idpConfiguration, issuer);
@@ -127,6 +132,8 @@
throw new IssuerNotTrustedException(issuer);
}
}
+ else
+ throw new ConfigurationException("trust element missing");
}
catch (Exception e)
{
@@ -137,18 +144,18 @@
private class SPTrustHandler
{
- public void handleRequestType(SAML2HandlerRequest request, SAML2HandlerResponse
response) throws ProcessingException
+ public void handleRequestType(SAML2HandlerRequest request, SAML2HandlerResponse
response,
+ SPType spConfiguration) throws ProcessingException
{
- SPType spConfiguration = (SPType)
request.getOptions().get(GeneralConstants.CONFIGURATION);
String issuer = request.getIssuer().getValue();
trustIssuer(spConfiguration, issuer);
}
- public void handleStatusResponseType(SAML2HandlerRequest request,
SAML2HandlerResponse response)
+ public void handleStatusResponseType(SAML2HandlerRequest request,
SAML2HandlerResponse response,
+ SPType spConfiguration)
throws ProcessingException
{
- SPType spConfiguration = (SPType)
request.getOptions().get(GeneralConstants.CONFIGURATION);
String issuer = request.getIssuer().getValue();
trustIssuer(spConfiguration, issuer);
@@ -186,6 +193,8 @@
throw new IssuerNotTrustedException(issuer);
}
}
+ else
+ throw new ConfigurationException("trust element missing");
}
catch (Exception e)
{
Modified:
identity-federation/trunk/jboss-identity-web/src/test/resources/saml2/logout/idp/WEB-INF/jbid-handlers.xml
===================================================================
---
identity-federation/trunk/jboss-identity-web/src/test/resources/saml2/logout/idp/WEB-INF/jbid-handlers.xml 2009-10-12
18:39:08 UTC (rev 851)
+++
identity-federation/trunk/jboss-identity-web/src/test/resources/saml2/logout/idp/WEB-INF/jbid-handlers.xml 2009-10-12
18:52:32 UTC (rev 852)
@@ -1,4 +1,5 @@
<Handlers xmlns="urn:jboss:identity-federation:handler:config:1.0">
+ <Handler
class="org.jboss.identity.federation.web.handlers.saml2.SAML2IssuerTrustHandler"/>
<Handler
class="org.jboss.identity.federation.web.handlers.saml2.SAML2LogOutHandler"/>
<Handler
class="org.jboss.identity.federation.web.handlers.saml2.RolesGenerationHandler"/>
</Handlers>
\ No newline at end of file
Modified:
identity-federation/trunk/jboss-identity-web/src/test/resources/saml2/logout/idp/WEB-INF/jboss-idfed.xml
===================================================================
---
identity-federation/trunk/jboss-identity-web/src/test/resources/saml2/logout/idp/WEB-INF/jboss-idfed.xml 2009-10-12
18:39:08 UTC (rev 851)
+++
identity-federation/trunk/jboss-identity-web/src/test/resources/saml2/logout/idp/WEB-INF/jboss-idfed.xml 2009-10-12
18:52:32 UTC (rev 852)
@@ -2,5 +2,8 @@
AttributeManager=""
RoleGenerator="org.jboss.identity.federation.core.impl.EmptyRoleGenerator">
<IdentityURL>http://localhost:8080/idp/</IdentityURL>
+<Trust>
+ <Domains>localhost,jboss.com,jboss.org</Domains>
+</Trust>
</JBossIDP>
Modified:
identity-federation/trunk/jboss-identity-web/src/test/resources/saml2/post/idp/WEB-INF/jboss-idfed.xml
===================================================================
---
identity-federation/trunk/jboss-identity-web/src/test/resources/saml2/post/idp/WEB-INF/jboss-idfed.xml 2009-10-12
18:39:08 UTC (rev 851)
+++
identity-federation/trunk/jboss-identity-web/src/test/resources/saml2/post/idp/WEB-INF/jboss-idfed.xml 2009-10-12
18:52:32 UTC (rev 852)
@@ -1,5 +1,8 @@
<JBossIDP xmlns="urn:jboss:identity-federation:config:1.0"
AttributeManager="">
<IdentityURL>http://localhost:8080/idp/</IdentityURL>
+<Trust>
+ <Domains>localhost,jboss.com,jboss.org</Domains>
+</Trust>
</JBossIDP>