Spring Security
  1. Spring Security
  2. SEC-1075

Update the embedded LDAP server to use Apache DS 1.5

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.0.0 RC1
    • Component/s: LDAP
    • Labels:
      None

      Description

      The <ldap-server> tag (see http://static.springframework.org/spring-security/site/reference/html/ldap.html#d4e1399) allows starting an embedded Apache DS instance.

      It currently uses Apache DS version 1.0.2. The latest Apache DS version is 1.5.4.

      The 1.5 branch of Apache DS has numerous improvements over 1.0, and is more stable and faster than 1.0. Unlike 1.0 it's also actively maintained.

      It has additional features that are important for unit and integration testing (which <ldap-server> tag is intended for) like support for dynamic schema and dynamic configuration.

      For those reasons Spring Security should be updated to use the newer Apache DS branch.

        Activity

        Hide
        Luke Taylor added a comment -

        The use of <ldap-server /> with an embedded server is really only intended for testing purposes so issues like performance aren't a major concer n Ultimately we will ugrade but it won't be a priority issue. Feel free to submit a patch if you would like to see this added to 2.5.

        Show
        Luke Taylor added a comment - The use of <ldap-server /> with an embedded server is really only intended for testing purposes so issues like performance aren't a major concer n Ultimately we will ugrade but it won't be a priority issue. Feel free to submit a patch if you would like to see this added to 2.5.
        Hide
        Aleksander Adamowski added a comment -

        Agreed that performance is not an issue, however the dynamic schema functionality is really a great asset for tests. Without it you can't easily perform tests with data that doesn't conform to the basic schema the Apache DS 1.0 start with by default.

        I've currently resorted to using org.apache.directory.server.integ.SiRunner from Apache DS 1.5.4 for my tests.

        However, if I get back to using <ldap-server> tag and have to modify Spring-Security for that, I'll certainly submit a patch.

        Show
        Aleksander Adamowski added a comment - Agreed that performance is not an issue, however the dynamic schema functionality is really a great asset for tests. Without it you can't easily perform tests with data that doesn't conform to the basic schema the Apache DS 1.0 start with by default. I've currently resorted to using org.apache.directory.server.integ.SiRunner from Apache DS 1.5.4 for my tests. However, if I get back to using <ldap-server> tag and have to modify Spring-Security for that, I'll certainly submit a patch.
        Hide
        Luke Taylor added a comment -

        I'm not famiiar of the latest features in 1.5, but I'm sure you're right that there would be some useful stuff in there. If I get some time I'll take a look at how things have changed in setting up an embedded configuration.

        Show
        Luke Taylor added a comment - I'm not famiiar of the latest features in 1.5, but I'm sure you're right that there would be some useful stuff in there. If I get some time I'll take a look at how things have changed in setting up an embedded configuration.
        Hide
        Luke Taylor added a comment -

        I've updated the dependency to the new Apacheds 1.5.5 and modified our classes to use this. Seems to be working OK with the namespace and LDAP integration tests. There is probably some scope for further refactoring, but it will do for now.

        Show
        Luke Taylor added a comment - I've updated the dependency to the new Apacheds 1.5.5 and modified our classes to use this. Seems to be working OK with the namespace and LDAP integration tests. There is probably some scope for further refactoring, but it will do for now.

          People

          • Assignee:
            Luke Taylor
            Reporter:
            Aleksander Adamowski
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: