Changeset 822


Ignore:
Timestamp:
24/04/06 17:28:02 (13 years ago)
Author:
lawrence
Message:

More scaffolding for thinking about secure browse.
(code probably wont execute)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TI07-MOLES/trunk/StubB/XSLT/browse/portal/cgi/secure.py

    r783 r822  
    1111                may be a pre-existing history component to the cookie. 
    1212                ''' 
     13                 
     14 
     15                 
    1316                #First we have to see if the ndgsecurity info is in the cookie 
    1417                if self.__notSecCookie(cookie): 
     
    3841        def _reEstablish(self,cookie): 
    3942                ''' bind to the existing WSDL ''' 
    40                 pass 
     43                 
     44                # 
     45                self.__loadKeys(smWSDL) 
     46                try: 
     47                        #set up session client  
     48                        # (all these keys to do message level encryption while talking to server, 
     49                        # see __loadKeys for more details) 
     50                        smClient = SessionClient( 
     51                            smWSDL=self.__smWSDL, 
     52                            smPubKeyFilePath=self.__remoteSessionManagerPublicKey, 
     53                                    clntPubKeyFilePath=self.__thisCGIpublicKey, 
     54                                    clntPriKeyFilePath=self.__thisCGIprivateKey, 
     55                            traceFile=traceFile) 
     56 
     57                        #connect using cookie 
     58                        resp = smClient.reqAuthorisation(sessCookie=cookieObj, 
     59                                    aaWSDL=self.__aaWSDL, 
     60                                                    aaPubKey=self.__aaPubKey, 
     61                                    reqRole=reqRole, 
     62                                    rtnExtAttCertList=bRtnExtAttCertList, 
     63                                    clntPriKeyPwd=self.__clntPriKeyPwd) 
     64                except Exception, e: 
     65                        # Socket error returns tuple - reformat to just give msg 
     66                        #raise SecurityCGIError("Session client: " + str(e)) 
     67                        pass # for now we don't have the libraries or code attached 
    4168 
    4269        def check(self, role, wsdlAA): 
     
    4471                the role at wsdlAA ''' 
    4572                pass 
     73         
     74        def __loadKeys(self,smWSDL): 
     75                ''' Load security keys ''' 
     76                 
     77                # We (potentially) need the public and private keys of this cgi script 
     78                # and the public key of the session client if our communication goes 
     79                # out over the public network and we want to deploy message 
     80                # level encryption. 
     81                  
     82                #However, for the first installation, we will assume both the CGI and  
     83                #the session manager are running behind the same firewall. 
     84                 
     85                self.__thisCGIpublicKey=None 
     86                self.__thisCGIprivateKey=None 
     87                self.__remoteSessionManagerPublicKey=None 
     88                 
     89                #we need to call out to smWSDL to get their public key as a first step? 
     90                #self.__remoteSessionManagerPublicKey=self.__getKey(smWSDL) 
     91                 
     92                return 
     93         
     94        def __getPublicKey(self,smWSDL): 
     95                ''' Given the WSDL address of a session manager object, get the public key associated  
     96                with it ''' 
     97                return None 
     98         
Note: See TracChangeset for help on using the changeset viewer.