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

Forgot password should either be disabled or fail with an explicit message when LDAP is read-only

    XMLWordPrintable

Details

    • Suggestion
    • Resolution: Duplicate
    • None
    • None
    • Confluence configured as such:
      - LDAP in read-only mode
      - External user managment off
    • We collect Confluence feedback from various sources, and we evaluate what we've collected when planning our product roadmap. To understand how this piece of feedback will be reviewed, see our Implementation of New Features Policy.

    Description

      When trying to reset the password in such configuration a "System Error" occurs as below:

      java.lang.UnsupportedOperationException: Cannot write to read-only UserManager [ldapRepository] java.lang.UnsupportedOperationException: Cannot write to read-only UserManager [ldapRepository]
      at com.atlassian.user.impl.ReadOnlyUserManager.alterPassword(ReadOnlyUserManager.java:29)
      at com.atlassian.user.impl.cache.CachingUserManager.alterPassword(CachingUserManager.java:138)
      at com.atlassian.user.impl.delegation.DelegatingListUserManager.alterPassword(DelegatingListUserManager.java:127)
      at bucket.user.DefaultUserAccessor.alterPassword(DefaultUserAccessor.java:695)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
      at org.springframework.aop.framework.AopProxyUtils.invokeJoinpointUsingReflection(AopProxyUtils.java:61)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:149)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:116)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:138)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:152)
      at $Proxy11.alterPassword(Unknown Source)
      at com.atlassian.confluence.user.actions.ForgotUserPasswordAction.execute(ForgotUserPasswordAction.java:49)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:168)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.intercept(DefaultWorkflowInterceptor.java:55)
      at com.atlassian.confluence.core.ConfluenceWorkflowInterceptor.intercept(ConfluenceWorkflowInterceptor.java:39)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      ...

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              sleberrigaud Samuel Le Berrigaud
              Votes:
              1 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: