electric.soap.security.tokens
Class SecurityTokenProcessor

java.lang.Object
  extended byelectric.soap.security.tokens.SecurityTokenProcessor
All Implemented Interfaces:
IEXMLLoggingConstants, IGLUELoggingConstants, ILoggingConstants, IWSSConstants, IXMLConstants

public class SecurityTokenProcessor
extends java.lang.Object
implements IWSSConstants, IXMLConstants, IGLUELoggingConstants

SecurityTokenProcessor is responsible for adding WS-Security tokens to outgoing messages and extracting tokens from incoming messages. Authentication and authorization of incoming tokens is done later. Tokens without an id will have an id created for them.

Author:
webMethods

Field Summary
 
Fields inherited from interface electric.soap.security.IWSSConstants
PASSWORD_DIGEST, PASSWORD_TEXT, SECURITY, SECURITY_TOKEN_REFERENCE, URI_ATTRIBUTE, WSSE_NAMESPACE, WSSE_PREFIX, WSU_NAMESPACE, WSU_PREFIX, X509_ENCODING_TYPE
 
Fields inherited from interface electric.xml.IXMLConstants
ATTLIST_START, ATTLIST_STOP, CDATA, CDATA_START, CDATA_STOP, CLOSE_TAG, COLON, COMMENT_START, COMMENT_STOP, DOCTYPE_START, DOCTYPE_STOP, ELEMENTDECL_START, ELEMENTDECL_STOP, ENCODING, ENTITYDECL_START, ENTITYDECL_STOP, ID, ID_CASE, INSTRUCTION_START, INSTRUCTION_STOP, NEGATIVE_INFINITY, NOT_A_NUMBER, NOTATIONDECL_START, NOTATIONDECL_STOP, NULL, OPEN_TAG, POSITIVE_INFINITY, PUBLIC, SPECIALS, STANDALONE, SUBSTITUTES, SYSTEM, UNDEFINED, VERSION, XML, XML_NAMESPACE, XMLDECL_START, XMLDECL_STOP, XMLNS, XMLNS_NAMESPACE
 
Fields inherited from interface electric.glue.IGLUELoggingConstants
CLUSTER_DEBUG_EVENT, CLUSTER_EVENT, CONSOLE_DEBUG_EVENT, DEPLOY_EVENT, DETECTORS_EVENT, HTTP_EVENT, JMS_EVENT, REBINDING_EVENT, SECURITY_DEBUG_EVENT, SECURITY_DETAIL_EVENT, SERVLET_EVENT, SOAP_EVENT
 
Fields inherited from interface electric.xml.IEXMLLoggingConstants
MAPPING_EVENT, SCHEMA_EVENT
 
Fields inherited from interface electric.util.log.ILoggingConstants
CLASSLOADER_EVENT, COMMAND_EVENT, COMMENT_EVENT, CONFIG_EVENT, DEBUG_EVENT, ELECTRIC_LOGGING_PROPERTY, ERROR_EVENT, EXCEPTION_EVENT, FILE_EVENT, LICENSE_EVENT, RESOURCES_EVENT, SECURITY_EVENT, SHUTDOWN_EVENT, SOURCE_EVENT, SQL_EVENT, STARTUP_EVENT, WARNING_EVENT
 
Constructor Summary
SecurityTokenProcessor()
           
 
Method Summary
 java.lang.String addToken(SOAPMessage message, WSSContext wss, Element securityElement, SecurityToken token)
          Add a single WS-Security token to an outgoing message.
 void addTokens(SOAPMessage message, WSSContext wss, Element securityElement)
          Add WS-Security tokens to and outgoing SOAP message.
protected  java.util.Vector processTokens(SecurityTokenFactory factory, Element securityElement)
          Iterate through the headers, find all the security tokens, and put them into a list.
 java.util.Vector readTokens(SOAPMessage message, WSSContext wss)
          Extract the WS-Security tokens from an incoming message and place them in the messageContext under the "wssSecurityTokens" property.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SecurityTokenProcessor

public SecurityTokenProcessor()
Method Detail

addTokens

public void addTokens(SOAPMessage message,
                      WSSContext wss,
                      Element securityElement)
Add WS-Security tokens to and outgoing SOAP message. Tokens should be added first, before any signatures or encryption elements.

Parameters:
message -
wss -
securityElement -

addToken

public java.lang.String addToken(SOAPMessage message,
                                 WSSContext wss,
                                 Element securityElement,
                                 SecurityToken token)
Add a single WS-Security token to an outgoing message. If the token does not have a user-assigned id, one is created as "electric-id-${random-uuid}".

Parameters:
message -
wss -
securityElement -
token -
Returns:
The id of the newly added token

readTokens

public java.util.Vector readTokens(SOAPMessage message,
                                   WSSContext wss)
Extract the WS-Security tokens from an incoming message and place them in the messageContext under the "wssSecurityTokens" property.

Parameters:
message -
wss -
Returns:
Vector of tokens, may be empty.

processTokens

protected java.util.Vector processTokens(SecurityTokenFactory factory,
                                         Element securityElement)
                                  throws java.lang.Exception
Iterate through the headers, find all the security tokens, and put them into a list. Make sure to get the id right.

Parameters:
factory -
securityElement -
Returns:
Tthe extracted tokens.
Throws:
java.lang.Exception


copyright© 2001-2004 by webMethods All Rights Reserved.