Derby
  1. Derby
  2. DERBY-236

Sane Mode and in our test environment, bootPassword gets written out in plain text to service.properties

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 10.1.1.0
    • Fix Version/s: 10.1.1.0
    • Component/s: Store
    • Labels:
      None
    • Environment:
      All

      Description

      In org.apache.derby.impl.store.RawStore

      in boot(), if we run a test using our testharness and with sane jars, the boot password gets written out to service.properties in plain text. This is incorrect, should not happen even for a sane and test harness combination..

      Code :-
      if (SanityManager.DEBUG)
      {
      if (!databaseEncrypted)
      {
      // check for system property if running under sanity - this
      // gives more test coverage for those that that hard code
      // connection URL in the test or somehow go thru the test
      // harness in a strange way.
      String testEncryption =
      PropertyUtil.getSystemProperty("testDataEncryption");

      if (testEncryption != null)

      { properties.put(Attribute.DATA_ENCRYPTION, "true"); properties.put(Attribute.BOOT_PASSWORD, testEncryption); databaseEncrypted = true; }

      }
      }

        Activity

        Hide
        Sunitha Kambhampati added a comment -

        changes checked in as svn 169913

        1. removed sanity debug code in RawStore to not write bootpassword in plain text into the service.properties
        2. currently the test harness does not seem to pass on the encryption related properties to the MultiTest and with change in #1, encryption wont be used for stress.multi. So changes made to RunTest to pass on the encryption, testEncryptionAlgorithm values to the MultiTest harness. Also changed mtTestCase to recognize the encryption properties and modify the database url to use for the MultiTest.
        – ran derbyall on jdk142 with no failures
        – verified that encryption run for stress.multi was running ok, by adding keepfiles=true to encryptionAll.properties and checking the service.properties for all the databases created as part of this encryptionAll testrun.

        Show
        Sunitha Kambhampati added a comment - changes checked in as svn 169913 1. removed sanity debug code in RawStore to not write bootpassword in plain text into the service.properties 2. currently the test harness does not seem to pass on the encryption related properties to the MultiTest and with change in #1, encryption wont be used for stress.multi. So changes made to RunTest to pass on the encryption, testEncryptionAlgorithm values to the MultiTest harness. Also changed mtTestCase to recognize the encryption properties and modify the database url to use for the MultiTest. – ran derbyall on jdk142 with no failures – verified that encryption run for stress.multi was running ok, by adding keepfiles=true to encryptionAll.properties and checking the service.properties for all the databases created as part of this encryptionAll testrun.

          People

          • Assignee:
            Sunitha Kambhampati
            Reporter:
            Sunitha Kambhampati
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development