Ignore:
Timestamp:
25/01/10 14:17:49 (11 years ago)
Author:
pjkersha
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • TI12-security/trunk/WSSecurity/ndg/wssecurity/common/signaturehandler/foursuite.py

    r6387 r6396  
    3535from Ft.Xml.Domlette import CanonicalPrint 
    3636 
    37 from ndg.security.common.wssecurity import WSSecurityError 
    38 from ndg.security.common.wssecurity.signaturehandler import _WSU, OASIS, \ 
    39     BaseSignatureHandler, NoSignatureFound, InvalidSignature, TimestampError, \ 
    40     MessageExpired, VerifyError, SignatureError 
    41  
    42 from ndg.security.common.X509 import X509Cert, X509CertParse, X509CertRead, \ 
    43     X509Stack, X509StackParseFromDER 
     37from ndg.wssecurity.common import (WSSecurityError, TimestampError,  
     38                                   MessageExpired) 
     39from ndg.wssecurity.common.signaturehandler import (_WSU, OASIS,  
     40    BaseSignatureHandler, NoSignatureFound, InvalidSignature,   
     41    VerifyError, SignatureError) 
     42 
     43from ndg.wssecurity.common.utils.pki import (X509Cert, X509CertParse,  
     44                                             X509CertRead, X509Stack,  
     45                                             X509StackParseFromDER) 
    4446 
    4547 
     
    5557    WS-Security 
    5658    """ 
     59    _refC14nPfxSet = lambda self: len(self.refC14nKw.get( 
     60                            BaseSignatureHandler.ZSI_C14N_KEYWORD_NAME, [])) > 0 
     61     
     62    refC14nPfxSet = property(fget=_refC14nPfxSet, 
     63                             doc="True if exclusive namespaces are set for " 
     64                                 "signature of reference elements") 
     65     
     66    _signedInfoC14nPfxSet = lambda self: len(self.signedInfoC14nKw.get( 
     67                            BaseSignatureHandler.ZSI_C14N_KEYWORD_NAME, [])) > 0 
     68                     
     69    signedInfoC14nPfxSet = property(fget=_signedInfoC14nPfxSet, 
     70                                    doc="True if exclusive namespaces are set " 
     71                                        "for signature of signed info " 
     72                                        "elements") 
     73                 
    5774 
    5875    def _applySignatureConfirmation(self, wsseElem): 
     
    213230                                     "time %s is before the current time %s." % 
    214231                                     (dtExpiry, dtNow)) 
    215              
    216                     
     232 
    217233    def sign(self, soapWriter): 
    218234        '''Sign the message body and binary security token of a SOAP message 
     
    232248 
    233249        # Add X.509 cert as binary security token 
    234         if self.reqBINARY_SECURITY_TOK_VAL_TYPE==self.BINARY_SECURITY_TOK_VAL_TYPE['X509PKIPathv1']: 
     250        if self.reqBinarySecurityTokValType == \ 
     251           self.BINARY_SECURITY_TOK_VAL_TYPE['X509PKIPathv1']: 
    235252            if self.signingCertChain is None: 
    236253                msg = 'SignatureHandler signingCertChain attribute is not set' 
     
    255272        # Flag if inclusive namespace prefixes are set for the signature or 
    256273        # reference elements 
    257         refC14nPfxSet = len(self.refC14nKw['inclusive_namespaces']) > 0 
    258         signedInfoC14nPfxSet = \ 
    259                         len(self.signedInfoC14nKw['inclusive_namespaces']) > 0 
    260                  
    261         if refC14nPfxSet or signedInfoC14nPfxSet: 
     274        if self.refC14nPfxSet or self.signedInfoC14nPfxSet: 
    262275           soapWriter._header.setNamespaceAttribute('ec', DSIG.C14N_EXCL) 
    263276         
     
    285298        binSecTokElem.setAttributeNS(None,  
    286299                                     'ValueType',  
    287                                      self.reqBINARY_SECURITY_TOK_VAL_TYPE) 
     300                                     self.reqBinarySecurityTokValType) 
    288301 
    289302        binSecTokElem.setAttributeNS(None,  
     
    322335        c14nMethodElem.setAttributeNS(None, 'Algorithm', signedInfoC14nAlg) 
    323336         
    324         if signedInfoC14nPfxSet: 
     337        if self.signedInfoC14nPfxSet: 
    325338            c14nInclNamespacesElem = c14nMethodElem.createAppendElement( 
    326339                                                    signedInfoC14nAlg, 
     
    391404            # Set Canonicalization algorithm type 
    392405            transformElem.setAttributeNS(None, 'Algorithm', refC14nAlg) 
    393             if refC14nPfxSet: 
     406            if self.refC14nPfxSet: 
    394407                # Exclusive C14N requires inclusive namespace elements 
    395408                inclNamespacesElem = transformElem.createAppendElement( 
Note: See TracChangeset for help on using the changeset viewer.