Uploaded image for project: 'Crowd Data Center'
  1. Crowd Data Center
  2. CWD-2854

Mixed case with LDAP, couldn't synchronize users and groups

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Medium Medium
    • 2.5.1
    • 2.4
    • None

      Error:

       11:22:42,426 QuartzWorker-1 WARN ServiceRunner [atlassian.crowd.directory.DbCachingRemoteChangeOperations] remote username [ KaaaE ] casing differs from local username [ kaaae ]. User details will be kept updated, but the username cannot be updated
       11:22:42,426 QuartzWorker-1 WARN ServiceRunner [atlassian.crowd.directory.DbCachingRemoteChangeOperations] remote username [ NPtest ] casing differs from local username [ nptest ]. User details will be kept updated, but the username cannot be updated
       11:22:42,426 QuartzWorker-1 WARN ServiceRunner [atlassian.crowd.directory.DbCachingRemoteChangeOperations] remote username [ PRconf ] casing differs from local username [ prconf ]. User details will be kept updated, but the username cannot be updated
       11:22:42,427 QuartzWorker-1 WARN ServiceRunner [atlassian.crowd.directory.DbCachingRemoteChangeOperations] remote username [ RaSh ] casing
      

      Steps to Reproduce:

      1) Create a Crowd internal directory
      2) Create a user in that directory named 'dbtte'
      3) Add that user to the 'jira-users' group
      4) Confirm that that user can log in to JIRA, assign them some issues, etc
      5) Connect Crowd to an LDAP directory as a delegated auth directory
      6) Create a user 'DBtte' in LDAP
      7) Authenticate as the LDAP user via JIRA/Crowd
      8) Create a 'jira-users' group for the LDAP directory
      9) Add the 'DBtte' LDAP user to 'jira-users'
      10) Delete the 'dbtte' internal user
      11) Attempt to log in to Crowd

      Other steps to reproduce (Crowd Internal Directory only)

      1. Create a user in Crowd which will be available to the Confluence application using the following details
        • Email Address: CamelCaseTC1@test.test
        • Active: Checked
        • Username: CamelCaseTC1
        • FirstName: CamelCaseTC1
        • LastName: CamelCaseTC1
        • Groups: Group1, Group2, Group3
      2. Within Confluence, force a Crowd Directory Sync & confirm that the user exists with the correct group memberships
      3. Back in Crowd, delete the previous user
      4. Create a user in Crowd which will be available to the Confluence application using the following details, but with the username.tolower() & an additional group membership
        • Email Address: CamelCaseTC1@test.test
        • Active: Checked
        • Username: camelcasetc1
        • FirstName: CamelCaseTC1
        • LastName: CamelCaseTC1
        • Groups: Group1, Group2, Group3, Group4
      5. Within Confluence, force a Crowd Directory Sync (or two) & wait for the hibernate SQL exception to appear

      Workarounds

      1. Set all users and groups that experience this issue back to the original casing, specified in 'local username' or 'local groupname'.
      2. Disable the directory by unticking 'Active'. Create a new directory, copying the settings of the existing directory, and sync that. When you're satisfied that everything has come across correctly and you will not be missing any users/groups/memberships, remove the old directory.

            [CWD-2854] Mixed case with LDAP, couldn't synchronize users and groups

            joe added a comment -

            The fix in Crowd was to convert members and groups to lowercase when deciding which memberships needed to be synchronised. Without that we could have tried to recreate memberships that already existed.

            joe added a comment - The fix in Crowd was to convert members and groups to lowercase when deciding which memberships needed to be synchronised. Without that we could have tried to recreate memberships that already existed.

            Jason Lang added a comment -

            What exactly was the fix in Crowd 2.5.1 for this issue? Was there a change made in Crowd with respect to handling mixed-case or was the resolution just to update Active Directory to all lower-case?

            Jason Lang added a comment - What exactly was the fix in Crowd 2.5.1 for this issue? Was there a change made in Crowd with respect to handling mixed-case or was the resolution just to update Active Directory to all lower-case?

            This also applies to groups

            Ray Elsleiman [Atlassian] added a comment - This also applies to groups

              ahempel Adrian Hempel [Atlassian]
              wzanchet William Zanchet (Inactive)
              Affected customers:
              2 This affects my team
              Watchers:
              10 Start watching this issue

                Created:
                Updated:
                Resolved: