Class WSSecurityEngine
java.lang.Object
org.apache.ws.security.WSSecurityEngine
WS-Security Engine.
- Author:
- Davanum Srinivas (dims@yahoo.com)., Werner Dittmann (Werner.Dittmann@t-online.de).
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final QNamewsse:BinarySecurityTokenas defined by WS Security specificationstatic final QNamewsc:DerivedKeyTokenas defined by WS-SecureConversation specificationstatic final QNamewsc:DerivedKeyTokenas defined by WS-SecureConversation specification in WS-SXstatic final QNamexenc:EncryptedKeyas defined by XML Encryption specification, enhanced by WS Security specificationstatic final QNamexenc:ReferenceListas defined by XML Encryption specification,static final QNamesaml:Assertionas defined by SAML specificationstatic final QNamewsc:SecurityContextTokenas defined by WS-SecureConversation specificationstatic final QNamewsc:SecurityContextTokenas defined by WS-SecureConversation specification in WS-SXstatic final QNameds:Signatureas defined by XML Signature specification, enhanced by WS Security specificationstatic final QNamewsse11:signatureConfirmationas defined by OASIS WS Security specification,static final QNamewsu:Timestampas defined by OASIS WS Security specification,static final QNamewsse:UsernameTokenas defined by WS Security specificationstatic final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic WSSecurityEngineGet a singleton instance of security engine.processSecurityHeader(Document doc, String actor, CallbackHandler cb, Crypto crypto) Process the security header given the soap envelope as W3C document.processSecurityHeader(Document doc, String actor, CallbackHandler cb, Crypto sigCrypto, Crypto decCrypto) Process the security header given the soap envelope as W3C document.protected VectorprocessSecurityHeader(Element securityHeader, CallbackHandler cb, Crypto sigCrypto, Crypto decCrypto) Process the security header given thewsse:SecurityDOM Element.static voidsetWssConfig(WSSConfig wsc)
-
Field Details
-
VALUE_TYPE
- See Also:
-
binaryToken
wsse:BinarySecurityTokenas defined by WS Security specification -
usernameToken
wsse:UsernameTokenas defined by WS Security specification -
timeStamp
wsu:Timestampas defined by OASIS WS Security specification, -
signatureConfirmation
wsse11:signatureConfirmationas defined by OASIS WS Security specification, -
SIGNATURE
ds:Signatureas defined by XML Signature specification, enhanced by WS Security specification -
ENCRYPTED_KEY
xenc:EncryptedKeyas defined by XML Encryption specification, enhanced by WS Security specification -
REFERENCE_LIST
xenc:ReferenceListas defined by XML Encryption specification, -
SAML_TOKEN
saml:Assertionas defined by SAML specification -
DERIVED_KEY_TOKEN_05_02
wsc:DerivedKeyTokenas defined by WS-SecureConversation specification -
SECURITY_CONTEXT_TOKEN_05_02
wsc:SecurityContextTokenas defined by WS-SecureConversation specification -
DERIVED_KEY_TOKEN_05_12
wsc:DerivedKeyTokenas defined by WS-SecureConversation specification in WS-SX -
SECURITY_CONTEXT_TOKEN_05_12
wsc:SecurityContextTokenas defined by WS-SecureConversation specification in WS-SX
-
-
Constructor Details
-
WSSecurityEngine
public WSSecurityEngine()
-
-
Method Details
-
getInstance
Get a singleton instance of security engine.- Returns:
- ws-security engine.
-
setWssConfig
- Parameters:
wsc- set the static WSSConfig to other than default
-
processSecurityHeader
public Vector processSecurityHeader(Document doc, String actor, CallbackHandler cb, Crypto crypto) throws WSSecurityException Process the security header given the soap envelope as W3C document. This is the main entry point to verify or decrypt a SOAP enevelope. First check if awsse:Securityis availabe with the defined actor.- Parameters:
doc- the SOAP envelope asDocumentactor- the engine works on behalf of thisactor. Refer to the SOAP specification aboutactororrolecb- a callback hander to the caller to resolve passwords during encryption andUsernameTokenhandlingcrypto- the object that implements the access to the keystore and the handling of certificates.- Returns:
- a result vector
- Throws:
WSSecurityException- See Also:
-
processSecurityHeader
public Vector processSecurityHeader(Document doc, String actor, CallbackHandler cb, Crypto sigCrypto, Crypto decCrypto) throws WSSecurityException Process the security header given the soap envelope as W3C document. This is the main entry point to verify or decrypt a SOAP enevelope. First check if awsse:Securityis availabe with the defined actor.- Parameters:
doc- the SOAP envelope asDocumentactor- the engine works on behalf of thisactor. Refer to the SOAP specification aboutactororrolecb- a callback hander to the caller to resolve passwords during encryption andUsernameTokenhandlingsigCrypto- the object that implements the access to the keystore and the handling of certificates for SignaturedecCrypto- the object that implements the access to the keystore and the handling of certificates for Decryption- Returns:
- a result vector
- Throws:
WSSecurityException- See Also:
-
processSecurityHeader
protected Vector processSecurityHeader(Element securityHeader, CallbackHandler cb, Crypto sigCrypto, Crypto decCrypto) throws WSSecurityException Process the security header given thewsse:SecurityDOM Element. This function loops over all direct child elements of thewsse:Securityheader. If it finds a knwon element, it transfers control to the appropriate handling function. The method processes the known child elements in the same order as they appear in thewsse:Securityelement. This is in accordance to the WS Security specification. Currently the functions can handle the following child elements:- Parameters:
securityHeader- thewsse:Securityheader elementcb- a callback hander to the caller to resolve passwords during encryption andUsernameTokenhandlingsigCrypto- the object that implements the access to the keystore and the handling of certificates used for SignaturedecCrypto- the object that implements the access to the keystore and the handling of certificates used for Decryption- Returns:
- a Vector of
WSSecurityEngineResult. Each element in the the Vector represents the result of a security action. The elements are ordered according to the sequence of the security actions in the wsse:Signature header. The Vector maybe empty if no security processing was performed. - Throws:
WSSecurityException
-