|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.rampart.util.RampartUtil
public class RampartUtil
Constructor Summary | |
---|---|
RampartUtil()
|
Method Summary | |
---|---|
static org.apache.neethi.Policy |
addRampartConfig(RampartMessageData rmd,
org.apache.neethi.Policy policy)
|
static java.lang.String |
addWsuIdToElement(org.apache.axiom.om.OMElement elem)
|
static org.w3c.dom.Element |
appendChildToSecHeader(RampartMessageData rmd,
org.w3c.dom.Element elem)
|
static org.w3c.dom.Element |
appendChildToSecHeader(RampartMessageData rmd,
org.apache.axiom.om.OMElement elem)
|
static boolean |
checkRequiredElements(org.apache.axiom.soap.SOAPEnvelope envelope,
java.util.HashMap decNamespaces,
java.lang.String expression)
Get a element for SOAP |
static org.apache.ws.security.WSEncryptionPart |
createEncryptionPart(java.lang.String name,
java.lang.String id)
Creates an Encryption or Signature paert with given name and id. |
static org.apache.ws.security.WSEncryptionPart |
createEncryptionPart(java.lang.String name,
java.lang.String id,
java.lang.String namespace,
java.lang.String modifier)
Creates an encryption part. |
static org.apache.ws.security.WSEncryptionPart |
createEncryptionPart(java.lang.String name,
java.lang.String id,
java.lang.String namespace,
java.lang.String modifier,
java.lang.String xPath)
Creates an encryption part. |
static org.apache.axiom.om.OMElement |
createRSTTempalteForSCT(int conversationVersion,
int wstVersion)
|
static boolean |
encryptFirst(RampartPolicyData rpd)
Returns true if needed to encrypt first. |
static java.util.Set |
findAllPrefixNamespaces(org.apache.axiom.om.OMElement currentElement,
java.util.HashMap decNamespacess)
|
static java.util.List<org.apache.ws.security.WSEncryptionPart> |
getContentEncryptedElements(java.util.List<org.apache.ws.security.WSEncryptionPart> encryptedPartsElements,
org.apache.axiom.soap.SOAPEnvelope envelope,
java.util.List<java.lang.String> elements,
java.util.HashMap decNamespaces)
|
static java.lang.String |
getContextIdentifierKey(org.apache.axis2.context.MessageContext msgContext)
Creates the unique (reproducible) id for to hold the context identifier of the message exchange. |
static java.util.Hashtable |
getContextMap(org.apache.axis2.context.MessageContext msgContext)
Returns the map of security context token identifiers |
static java.util.List<org.apache.ws.security.WSEncryptionPart> |
getEncryptedParts(RampartMessageData rmd)
|
static org.apache.ws.security.components.crypto.Crypto |
getEncryptionCrypto(RampartConfig config,
java.lang.ClassLoader loader)
Create the Crypto instance for encryption using information
from the rampart configuration assertion |
static javax.crypto.KeyGenerator |
getEncryptionKeyGenerator(java.lang.String symEncrAlgo)
|
static java.lang.String |
getIssuedToken(RampartMessageData rmd,
org.apache.ws.secpolicy.model.IssuedToken issuedToken)
Obtain an issued token. |
static int |
getKeyIdentifier(org.apache.ws.secpolicy.model.X509Token token)
figureout the key identifier of a give X509Token |
static java.util.List<org.apache.ws.security.WSEncryptionPart> |
getPartsAndElements(boolean sign,
org.apache.axiom.soap.SOAPEnvelope envelope,
boolean includeBody,
java.util.List<org.apache.ws.security.WSEncryptionPart> parts,
java.util.List<java.lang.String> elements,
java.util.HashMap decNamespaces)
|
static javax.security.auth.callback.CallbackHandler |
getPasswordCB(org.apache.axis2.context.MessageContext msgContext,
RampartPolicyData rpd)
|
static javax.security.auth.callback.CallbackHandler |
getPasswordCB(RampartMessageData rmd)
|
static org.apache.neethi.Policy |
getPolicyFromMetadataRef(org.apache.axiom.om.OMElement mex)
Retrieve policy using metadata reference |
static PolicyValidatorCallbackHandler |
getPolicyValidatorCB(org.apache.axis2.context.MessageContext msgContext,
RampartPolicyData rpd)
Returns an instance of PolicyValidatorCallbackHandler to be used to validate ws-security results. |
static RampartConfigCallbackHandler |
getRampartConfigCallbackHandler(org.apache.axis2.context.MessageContext msgContext,
RampartPolicyData rpd)
|
static java.lang.String |
getRequestEncryptedKeyId(java.util.List<org.apache.ws.security.handler.WSHandlerResult> results)
|
static byte[] |
getRequestEncryptedKeyValue(java.util.List<org.apache.ws.security.handler.WSHandlerResult> results)
|
static java.lang.String |
getSAML10AssertionNamespace()
Returns SAML10 Assertion namespace. |
static java.lang.String |
getSecConvToken(RampartMessageData rmd,
org.apache.ws.secpolicy.model.SecureConversationToken secConvTok)
Obtain a security context token. |
static java.lang.String |
getSigElementId(RampartMessageData rmd)
|
static org.apache.ws.security.components.crypto.Crypto |
getSignatureCrypto(RampartConfig config,
java.lang.ClassLoader loader)
Create the Crypto instance for signature using information
from the rampart configuration assertion |
static java.util.List<org.apache.ws.security.WSEncryptionPart> |
getSignedParts(RampartMessageData rmd)
|
static java.lang.String |
getSoapBodyId(org.apache.axiom.soap.SOAPEnvelope env)
|
static java.util.List<org.apache.ws.security.WSEncryptionPart> |
getSupportingEncryptedParts(RampartMessageData rmd,
SupportingPolicyData rpd)
|
static java.util.List<org.apache.ws.security.WSEncryptionPart> |
getSupportingSignedParts(RampartMessageData rmd,
SupportingPolicyData rpd)
|
static int |
getTimestampMaxSkew(RampartMessageData messageData)
|
static int |
getTimeToLive(RampartMessageData messageData)
|
static java.lang.String |
getToken(RampartMessageData rmd,
org.apache.axiom.om.OMElement rstTemplate,
java.lang.String issuerEpr,
java.lang.String action,
org.apache.neethi.Policy issuerPolicy)
Request a token. |
static java.lang.String |
getUsername(java.util.List<org.apache.ws.security.handler.WSHandlerResult> results)
Scan through WSHandlerResult |
static org.apache.ws.security.WSSConfig |
getWSSConfigInstance()
We use this method to prevent the singleton behavior of WSSConfig |
static void |
handleEncryptedSignedHeaders(java.util.List<org.apache.ws.security.WSEncryptionPart> encryptedParts,
java.util.List<org.apache.ws.security.WSEncryptionPart> signedParts,
org.w3c.dom.Document doc)
|
static org.w3c.dom.Element |
insertSiblingAfter(RampartMessageData rmd,
org.w3c.dom.Element child,
org.w3c.dom.Element sibling)
|
static org.w3c.dom.Element |
insertSiblingAfterOrPrepend(RampartMessageData rmd,
org.w3c.dom.Element child,
org.w3c.dom.Element elem)
If the child is present insert the element as a sibling after him. |
static org.w3c.dom.Element |
insertSiblingBefore(RampartMessageData rmd,
org.w3c.dom.Element child,
org.w3c.dom.Element sibling)
|
static org.w3c.dom.Element |
insertSiblingBeforeOrPrepend(RampartMessageData rmd,
org.w3c.dom.Element child,
org.w3c.dom.Element elem)
|
static boolean |
isSecHeaderRequired(RampartPolicyData rpd,
boolean initiator,
boolean inflow)
Method to check whether security header is required in incoming message |
static boolean |
isTokenValid(RampartMessageData rmd,
java.lang.String id)
|
static org.apache.ws.security.WSPasswordCallback |
performCallback(javax.security.auth.callback.CallbackHandler cbHandler,
java.lang.String username,
int doAction)
Perform a callback to get a password. |
static java.lang.String |
processIssuerAddress(org.apache.axiom.om.OMElement issuerAddress)
Process a give issuer address element and return the address. |
static void |
setDecryptionCrypto(org.apache.axis2.context.MessageContext msgContext)
Sets decryption crypto file or crypto reference key to signature crypto file or signature crypto reference. |
static void |
setEncryptionCrypto(org.apache.axis2.context.MessageContext msgContext)
Sets encryption crypto file or crypto reference key to signature crypto file or signature crypto reference. |
static void |
setEncryptionUser(RampartMessageData rmd,
org.apache.ws.security.message.WSSecEncryptedKey encrKeyBuilder)
|
static void |
setEncryptionUser(RampartMessageData rmd,
org.apache.ws.security.message.WSSecEncryptedKey encrKeyBuilder,
java.lang.String encrUser)
|
static void |
setKeyIdentifierType(RampartMessageData rmd,
org.apache.ws.security.message.WSSecBase secBase,
org.apache.ws.secpolicy.model.Token token)
Sets the keyIdentifierType of WSSecSignature or WSSecEncryptedKey
according to the given Token and RampartPolicyData
First check the requirements specified under Token Assertion and if not found check
the WSS11 and WSS10 assertions |
static void |
validateTransport(RampartMessageData rmd)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public RampartUtil()
Method Detail |
---|
public static javax.security.auth.callback.CallbackHandler getPasswordCB(RampartMessageData rmd) throws RampartException
RampartException
public static javax.security.auth.callback.CallbackHandler getPasswordCB(org.apache.axis2.context.MessageContext msgContext, RampartPolicyData rpd) throws RampartException
msgContext
- rpd
-
CallbackHandler
instance
RampartException
public static PolicyValidatorCallbackHandler getPolicyValidatorCB(org.apache.axis2.context.MessageContext msgContext, RampartPolicyData rpd) throws RampartException
msgContext
- MessageContext
rpd
- RampartPolicyData
PolicyValidatorCallbackHandler
RampartException
- RampartExceptionpublic static RampartConfigCallbackHandler getRampartConfigCallbackHandler(org.apache.axis2.context.MessageContext msgContext, RampartPolicyData rpd) throws RampartException
RampartException
public static org.apache.ws.security.WSPasswordCallback performCallback(javax.security.auth.callback.CallbackHandler cbHandler, java.lang.String username, int doAction) throws RampartException
RampartException
public static org.apache.ws.security.components.crypto.Crypto getEncryptionCrypto(RampartConfig config, java.lang.ClassLoader loader) throws RampartException
Crypto
instance for encryption using information
from the rampart configuration assertion
config
-
Crypto
instance to be used for encryption
RampartException
public static org.apache.ws.security.components.crypto.Crypto getSignatureCrypto(RampartConfig config, java.lang.ClassLoader loader) throws RampartException
Crypto
instance for signature using information
from the rampart configuration assertion
config
-
Crypto
instance to be used for signature
RampartException
public static int getKeyIdentifier(org.apache.ws.secpolicy.model.X509Token token) throws RampartException
token
-
RampartException
public static java.lang.String processIssuerAddress(org.apache.axiom.om.OMElement issuerAddress) throws RampartException
issuerAddress
-
RampartException
- If the issuer address element is malformed.public static org.apache.neethi.Policy getPolicyFromMetadataRef(org.apache.axiom.om.OMElement mex) throws RampartException
mex
- Metadata element
RampartException
public static org.apache.neethi.Policy addRampartConfig(RampartMessageData rmd, org.apache.neethi.Policy policy)
public static org.apache.axiom.om.OMElement createRSTTempalteForSCT(int conversationVersion, int wstVersion) throws RampartException
RampartException
public static int getTimeToLive(RampartMessageData messageData)
public static int getTimestampMaxSkew(RampartMessageData messageData)
public static java.lang.String getSecConvToken(RampartMessageData rmd, org.apache.ws.secpolicy.model.SecureConversationToken secConvTok) throws TrustException, RampartException
rmd
- secConvTok
-
TrustException
RampartException
public static java.lang.String getIssuedToken(RampartMessageData rmd, org.apache.ws.secpolicy.model.IssuedToken issuedToken) throws RampartException
rmd
- issuedToken
-
RampartException
public static java.lang.String getToken(RampartMessageData rmd, org.apache.axiom.om.OMElement rstTemplate, java.lang.String issuerEpr, java.lang.String action, org.apache.neethi.Policy issuerPolicy) throws RampartException
rmd
- rstTemplate
- issuerEpr
- action
- issuerPolicy
-
RampartException
public static java.lang.String getSoapBodyId(org.apache.axiom.soap.SOAPEnvelope env)
public static java.lang.String addWsuIdToElement(org.apache.axiom.om.OMElement elem)
public static org.w3c.dom.Element appendChildToSecHeader(RampartMessageData rmd, org.apache.axiom.om.OMElement elem)
public static org.w3c.dom.Element appendChildToSecHeader(RampartMessageData rmd, org.w3c.dom.Element elem)
public static org.w3c.dom.Element insertSiblingAfter(RampartMessageData rmd, org.w3c.dom.Element child, org.w3c.dom.Element sibling)
public static org.w3c.dom.Element insertSiblingBefore(RampartMessageData rmd, org.w3c.dom.Element child, org.w3c.dom.Element sibling)
public static java.util.List<org.apache.ws.security.WSEncryptionPart> getEncryptedParts(RampartMessageData rmd)
public static java.util.List<org.apache.ws.security.WSEncryptionPart> getSignedParts(RampartMessageData rmd)
public static java.util.List<org.apache.ws.security.WSEncryptionPart> getSupportingEncryptedParts(RampartMessageData rmd, SupportingPolicyData rpd)
public static java.util.List<org.apache.ws.security.WSEncryptionPart> getSupportingSignedParts(RampartMessageData rmd, SupportingPolicyData rpd)
public static java.util.Set findAllPrefixNamespaces(org.apache.axiom.om.OMElement currentElement, java.util.HashMap decNamespacess)
public static java.util.List<org.apache.ws.security.WSEncryptionPart> getContentEncryptedElements(java.util.List<org.apache.ws.security.WSEncryptionPart> encryptedPartsElements, org.apache.axiom.soap.SOAPEnvelope envelope, java.util.List<java.lang.String> elements, java.util.HashMap decNamespaces)
public static org.apache.ws.security.WSEncryptionPart createEncryptionPart(java.lang.String name, java.lang.String id)
name
- The name of the partid
- The id of the part.
public static org.apache.ws.security.WSEncryptionPart createEncryptionPart(java.lang.String name, java.lang.String id, java.lang.String namespace, java.lang.String modifier)
name
- Name of the element.id
- The id of the elementnamespace
- Namespace of the element.modifier
- Modifier "Content" or "Element"
public static org.apache.ws.security.WSEncryptionPart createEncryptionPart(java.lang.String name, java.lang.String id, java.lang.String namespace, java.lang.String modifier, java.lang.String xPath)
name
- Name of the element.id
- The id of the elementnamespace
- Namespace of the element.modifier
- Modifier "Content" or "Element"xPath
- The xPath expression
public static java.util.List<org.apache.ws.security.WSEncryptionPart> getPartsAndElements(boolean sign, org.apache.axiom.soap.SOAPEnvelope envelope, boolean includeBody, java.util.List<org.apache.ws.security.WSEncryptionPart> parts, java.util.List<java.lang.String> elements, java.util.HashMap decNamespaces)
public static boolean checkRequiredElements(org.apache.axiom.soap.SOAPEnvelope envelope, java.util.HashMap decNamespaces, java.lang.String expression)
envelope
- SOAP Envelope of which we should check required elementsdecNamespaces
- Declared namespaces in RequiredElements assertionexpression
- XPATH expression of required elements
public static javax.crypto.KeyGenerator getEncryptionKeyGenerator(java.lang.String symEncrAlgo) throws org.apache.ws.security.WSSecurityException
org.apache.ws.security.WSSecurityException
public static java.lang.String getContextIdentifierKey(org.apache.axis2.context.MessageContext msgContext)
public static java.util.Hashtable getContextMap(org.apache.axis2.context.MessageContext msgContext)
public static boolean isTokenValid(RampartMessageData rmd, java.lang.String id) throws RampartException
RampartException
public static void setEncryptionUser(RampartMessageData rmd, org.apache.ws.security.message.WSSecEncryptedKey encrKeyBuilder) throws RampartException
RampartException
public static void setEncryptionUser(RampartMessageData rmd, org.apache.ws.security.message.WSSecEncryptedKey encrKeyBuilder, java.lang.String encrUser) throws RampartException
RampartException
public static void setKeyIdentifierType(RampartMessageData rmd, org.apache.ws.security.message.WSSecBase secBase, org.apache.ws.secpolicy.model.Token token)
WSSecSignature
or WSSecEncryptedKey
according to the given Token
and RampartPolicyData
First check the requirements specified under Token Assertion and if not found check
the WSS11 and WSS10 assertions
public static java.lang.String getUsername(java.util.List<org.apache.ws.security.handler.WSHandlerResult> results)
WSHandlerResult list for a Username token and return
the username if a Username Token found
- Parameters:
results
-
- Returns:
public static java.lang.String getRequestEncryptedKeyId(java.util.List<org.apache.ws.security.handler.WSHandlerResult> results)
public static byte[] getRequestEncryptedKeyValue(java.util.List<org.apache.ws.security.handler.WSHandlerResult> results)
public static org.w3c.dom.Element insertSiblingAfterOrPrepend(RampartMessageData rmd, org.w3c.dom.Element child, org.w3c.dom.Element elem)
rmd
- child
- elem
- - element mentioned above
public static org.w3c.dom.Element insertSiblingBeforeOrPrepend(RampartMessageData rmd, org.w3c.dom.Element child, org.w3c.dom.Element elem)
public static boolean isSecHeaderRequired(RampartPolicyData rpd, boolean initiator, boolean inflow)
rpd
-
public static void handleEncryptedSignedHeaders(java.util.List<org.apache.ws.security.WSEncryptionPart> encryptedParts, java.util.List<org.apache.ws.security.WSEncryptionPart> signedParts, org.w3c.dom.Document doc)
public static java.lang.String getSigElementId(RampartMessageData rmd)
public static org.apache.ws.security.WSSConfig getWSSConfigInstance()
public static void validateTransport(RampartMessageData rmd) throws RampartException
RampartException
public static java.lang.String getSAML10AssertionNamespace()
public static void setEncryptionCrypto(org.apache.axis2.context.MessageContext msgContext)
msgContext
- The message context to get signature crypto properties and encryption properties
will be set to same message context.public static void setDecryptionCrypto(org.apache.axis2.context.MessageContext msgContext)
msgContext
- The message context to get signature crypto properties and decryption properties
will be set to same message context.public static boolean encryptFirst(RampartPolicyData rpd)
rpd
- Rampart policy data
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |