Пример #1
0
def decryptAllPasswords(configfilepath, domainProperties):
    log.debug("Decrypting any Encrypted passwords in file : " + configfilepath)

    #fileobj=open(configfilepath,'r')
    #proplist = fileobj.readlines()
    enum = domainProperties.keys()
    while enum.hasMoreElements():
        propkey = enum.nextElement()
        if String(propkey.lower()).endsWith('.password'):
            propvaluewithkey = domainProperties.getProperty(propkey)
            if (propvaluewithkey.startswith("{AES}")):
                log.debug('decrypting password for ' + propkey)
                propvaluewithkey = String(propvaluewithkey).trim()
                propvalue = propvaluewithkey[5:len(propvaluewithkey) - 24]
                key = propvaluewithkey[len(propvaluewithkey) - 24:]
                decrypted = decryptPassword(propvalue, key)
                domainProperties.setProperty(propkey, decrypted)
            elif (propvaluewithkey.startswith("${")):
                propvaluewithkeytrimmed = propvaluewithkey[2:propvaluewithkey.
                                                           find("}")]
                copyRefValues(propvaluewithkeytrimmed, proplist,
                              domainProperties, propkey)
            else:
                log.debug('leaving unencrypted value for ' + propkey)