I have extended Jackrabbit to allow HTTP digest authentication through WebDAV, as Windows 7 can't connect to a WebDAV repository using basic authentication.
      The implementation is based on Tomcat's source code (I have used it as a reference to implement the same authentication handling in Jackrabbit). I hope that's not a problem.

      In order to enable the digest authentication, you need to:

      • Change the WebDAV servlet from 'org.apache.jackrabbit.j2ee.SimpleWebdavServlet' to 'org.apache.jackrabbit.j2ee.DigestWebdavServlet' in the web.xml file;
      • Change the LoginModule to '' in the repository.xml file
      • Add the parameter 'passwordsFile' to the DigestLoginModule with the path of the passwords file.
      • Add to the passwords file created above the user id and the password digest. The utility DigestPasswordUtil in the jackrabbit-jcr-commons project can be used to generate the entry to be appended to the passwords file.

      java -cp target/jackrabbit-jcr-commons-2.2-SNAPSHOT.jar org.apache.jackrabbit.util.DigestPasswordUtil user realm password

      The DigestLoginModule configuration is optional, I believe the DigestWebdavServlet should work normally with the SimpleLoginModule which accepts any credentials.

      1. JCR-2773.patch
        23 kB
        Douglas Jose
      2. http-digest.patch
        25 kB
        Douglas Jose


        Douglas Jose created issue -
        Douglas Jose made changes -
        Field Original Value New Value
        Attachment http-digest.patch [ 12456840 ]
        angela made changes -
        Component/s jackrabbit-core [ 12310114 ]
        Component/s jackrabbit-jcr-server [ 12312058 ]
        Component/s jackrabbit-webapp [ 12311584 ]
        Component/s security [ 11646 ]
        Douglas Jose made changes -
        Attachment JCR-2773.patch [ 12457351 ]
        dcabrera22 made changes -
        Status Open [ 1 ] Patch Available [ 10002 ]
        Affects Version/s 1.6.0 [ 12313459 ]


          • Assignee:
            Douglas Jose
          • Votes:
            0 Vote for this issue
            0 Start watching this issue


            • Created: