Uploaded image for project: 'Confluence Data Center'
  1. Confluence Data Center
  2. CONFSERVER-18375

When LDAP server is down, Confluence permission breaks

    XMLWordPrintable

Details

    Description

      Bug Background

      The page permission allows users to restrict other users/group from either viewing or editing the page. This would also work while using LDAP server. Problem occurs when LDAP server is down for some reason. The user is not allowed to even add the local confluence group such as confluence-users or confluence-administrators. There's no problem with restricting local users though.

      Steps to reproduce
      1. Hook up Confluence with LDAP
      2. Make sure LDAP users can login and work with Confluence
      3. Shutdown LDAP server and restart Confluence instance
      4. Go to a page, edit it and try to add a local group to the page restriction:
        • Scenario 1:
          • User keys-in the group name(for example, confluence-users) in the text-field and click the 'Restrict' button
          • Screenshot to depict this: Scenario1.png
        • Scenario 2:
          • User clicks the 'Group' button and select a group from the list using the Group Search
          • Screenshot to depict this: Before selection and Result
        • Upon checking the atlassian-confluence.log, the following stacktrace were found which could be the cause for the whole issue:

          2010-01-27 14:54:09,958 ERROR [http-8080-4] [bucket.user.DefaultUserAccessor] hasMembership javax.naming.CommunicationException: localhost:389 [Root exception is java.net.ConnectException: Connection refused]
          – url: /pages/getpagepermissions.action | userName: admin | referer: http://localhost:8080/pages/editpage.action?pageId=5767172
          2010-01-27 14:54:09,962 ERROR [http-8080-4] [bucket.user.DefaultUserAccessor] hasMembership javax.naming.CommunicationException: localhost:389 [Root exception is java.net.ConnectException: Connection refused]
          – url: /pages/getpagepermissions.action | userName: admin | referer: http://localhost:8080/pages/editpage.action?pageId=5767172
          2010-01-27 14:54:09,965 ERROR [http-8080-4] [bucket.user.DefaultUserAccessor] hasMembership javax.naming.CommunicationException: localhost:389 [Root exception is java.net.ConnectException: Connection refused]
          – url: /pages/getpagepermissions.action | userName: admin | referer: http://localhost:8080/pages/editpage.action?pageId=5767172

      Additional Information
      1. The issue above also affects other permissions in Confluence
      2. For example, in space permission and global permission, both confluence-administrators and confluence-users are shown as not found.
      3. Screenshot for space permission
      4. Screenshot for global permission
      Findings
      1. If in atlassian-user.xml, the hibernate datasource is declared above the ldap datasource, this problem won't occur.

      Attachments

        1. GlobalPermission.png
          GlobalPermission.png
          184 kB
        2. Scenario1.png
          Scenario1.png
          107 kB
        3. Scenario2.png
          Scenario2.png
          286 kB
        4. Scenario2a.png
          Scenario2a.png
          111 kB
        5. SpacePermission.png
          SpacePermission.png
          157 kB

        Issue Links

          Activity

            People

              matt@atlassian.com Matt Ryall
              sjayaraman Sashidaran Jayaraman [Atlassian]
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: