Ignore:
Timestamp:
28/10/10 13:24:59 (10 years ago)
Author:
pjkersha
Message:

Added SOAPFault handling for ndg.soap package. Needs integration into ndg.saml.saml2.binding.soap.server.wsgi.queryinterface to enable SAML query interface to do better error reporting.

Location:
TI12-security/trunk/ndg_saml
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • TI12-security/trunk/ndg_saml

    • Property svn:ignore
      •  

        old new  
        22dist 
        33ndg_saml.egg-info 
         4ndg_saml_env.sh 
  • TI12-security/trunk/ndg_saml/ndg/saml/utils/m2crypto.py

    r7322 r7662  
    179179 
    180180    def copy(self): 
    181  
    182181        import copy 
    183182        return copy.copy(self) 
     
    831830         
    832831        elif isinstance(x509Cert, basestring): 
    833             return self.__m2X509Stack.push(\ 
    834                                        X509Cert.Parse(x509Cert).m2CryptoX509)             
     832            return self.__m2X509Stack.push( 
     833                                       X509Cert.Parse(x509Cert).m2CryptoX509)   
    835834        else: 
    836835            raise X509StackError("Expecting M2Crypto.X509.X509, ndg.security." 
     
    854853    def verifyCertChain(self,  
    855854                        x509Cert2Verify=None,  
    856                         caX509Stack=[], 
     855                        caX509Stack=None, 
    857856                        rejectSelfSignedCert=True): 
    858857        """Treat stack as a list of certificates in a chain of 
     
    872871        @type rejectSelfSignedCert: bool""" 
    873872         
     873        if caX509Stack is None: 
     874            caX509Stack = [] 
     875             
    874876        n2Validate = len(self) 
    875877        if x509Cert2Verify: 
     
    976978                 peerCertDN=None,  
    977979                 peerCertCN=None, 
    978                  acceptedDNs=[],  
    979                  caCertList=[], 
    980                  caCertFilePathList=[],  
     980                 acceptedDNs=None,  
     981                 caCertList=None, 
     982                 caCertFilePathList=None,  
    981983                 **kw): 
    982984        """Override parent class __init__ to enable setting of myProxyServerDN 
     
    10031005        @param caCertFilePathList: same as caCertList except input as list 
    10041006        of CA cert file paths""" 
     1007         
     1008        if acceptedDNs is None: 
     1009            acceptedDNs = [] 
     1010              
     1011        if caCertList is None: 
     1012            caCertList = [] 
     1013             
     1014        if caCertFilePathList is None: 
     1015            caCertFilePathList = [] 
    10051016         
    10061017        SSL.Checker.Checker.__init__(self, **kw) 
     
    10421053         
    10431054        if self.acceptedDNs: 
    1044            matchFound = False 
    1045            for dn in self.acceptedDNs: 
    1046                x500dn = X500DN(dn=dn) 
    1047                if x500dn == peerCertX500DN: 
    1048                    matchFound = True 
    1049                    break 
    1050                 
    1051            if not matchFound: 
    1052                raise InvalidCertDN('Peer cert DN "%s" doesn\'t match ' 
    1053                                    'verification list' % peerCertDN) 
     1055            matchFound = False 
     1056            for dn in self.acceptedDNs: 
     1057                x500dn = X500DN(dn=dn) 
     1058                if x500dn == peerCertX500DN: 
     1059                    matchFound = True 
     1060                    break 
     1061                 
     1062            if not matchFound: 
     1063                raise InvalidCertDN('Peer cert DN "%s" doesn\'t match ' 
     1064                                    'verification list' % peerCertDN) 
    10541065 
    10551066        if len(self.__caCertStack) > 0: 
     
    12361247            ctx.load_verify_locations(self.sslCACertFilePath,  
    12371248                                      self.sslCACertDir) 
    1238             mode = SSL.verify_peer|SSL.verify_fail_if_no_peer_cert 
    1239         else: 
    1240             mode = SSL.verify_fail_if_no_peer_cert 
     1249            mode = SSL.verify_peer 
     1250        else: 
     1251            mode = SSL.verify_none 
    12411252            log.warning('No CA certificate files set: mode set to ' 
    1242                         '"verify_fail_if_no_peer_cert" only') 
     1253                        '"verify_none"!  No verification of the server ' 
     1254                        'certificate will be enforced') 
    12431255             
    12441256        if len(self.sslValidDNs) > 0: 
    12451257            # Set custom callback in order to verify peer certificate DN  
    12461258            # against whitelist 
     1259            mode = SSL.verify_peer 
    12471260            callback = self.createVerifySSLPeerCertCallback() 
    12481261            log.debug('Set peer certificate Distinguished Name check set in ' 
     
    12531266                        'SSL Context') 
    12541267             
    1255         ctx.set_verify(mode, depth, callback=callback) 
     1268        ctx.set_verify(mode, 9, callback=callback)   
    12561269            
    12571270        return ctx 
Note: See TracChangeset for help on using the changeset viewer.