chauth / confluence_http_authenticator

The new home of the Confluence HTTP Authenticator (formerly known as the Confluence Shibboleth Authenticator)
Other
64 stars 36 forks source link

doInTransaction Failed to add user ... to group 'confluence-users' #14

Closed itasv closed 10 years ago

itasv commented 10 years ago

Hello everyone,

the authenticator seems to run into trouble when creating users and adding them to the confluence-users group. However, the user still exists afterwards but just can't do anything within Confluence. When I create users via the Confluence authenticator (local accounts), the group is automatically added. Does anybody have a clue as to what is going wrong?

CONFIG

create.users=true
update.info=true
update.last.login.date=true
reload.config=true
reload.config.check.interval=5000
default.roles=confluence-users
header.fullname=cn
header.email=mail
header.remote_user=REMOTE_USER
username.convertcase=false
update.roles=true
convert.to.utf8=true
dynamicroles.auto_create_role=true
dynamicroles.output.tolowercase=true

LOG

2013-11-07 15:05:04,226 ERROR [TP-Processor2] [confluence.authentication.shibboleth.RemoteUserAuthenticator] doInTransaction Failed to add user 34PFEWJnfeniuhwp4211FfA0R2FtFCPjog9HPZMfyJoF to group 'confluence-users'!

2013-11-07 15:05:04,226 ERROR [TP-Processor2] [confluence.authentication.shibboleth.RemoteUserAuthenticator] doInTransaction Failed to add user 34PFEWJnfeniuhwp4211FfA0R2FtFCPjog9HPZMfyJoF to group 'confluence-users'!

java.lang.NoSuchMethodError: com.atlassian.crowd.embedded.api.CrowdService.addUserToGroup(Lcom/atlassian/crowd/embedded/api/User;Lcom/atlassian/crowd/embedded/api/Group;)V
        at shibauth.confluence.authentication.shibboleth.RemoteUserAuthenticator$1.doInTransaction(RemoteUserAuthenticator.java:1222)
        at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:128)
        at shibauth.confluence.authentication.shibboleth.RemoteUserAuthenticator.addUserToGroup(RemoteUserAuthenticator.java:1219)
        at shibauth.confluence.authentication.shibboleth.RemoteUserAuthenticator.assignUserToRoles(RemoteUserAuthenticator.java:258)
        at shibauth.confluence.authentication.shibboleth.RemoteUserAuthenticator.updateGroupMemberships(RemoteUserAuthenticator.java:880)
        at shibauth.confluence.authentication.shibboleth.RemoteUserAuthenticator.getUser(RemoteUserAuthenticator.java:1043)
        at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:125)
        at com.atlassian.confluence.web.filter.ConfluenceSecurityFilter.doFilter(ConfluenceSecurityFilter.java:28)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.confluence.web.filter.ThreadLocalCacheFilter.doFilter(ThreadLocalCacheFilter.java:22)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:98)
        at com.atlassian.confluence.util.AbstractBootstrapHotSwappingFilter.doFilter(AbstractBootstrapHotSwappingFilter.java:30)
        at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.seraph.filter.BaseLoginFilter.doFilter(BaseLoginFilter.java:150)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
        at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)
        at com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:55)
        at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)
        at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)
        at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)
        at com.atlassian.prettyurls.filter.PrettyUrlsCombinedMatchDispatcherFilter.doFilter(PrettyUrlsCombinedMatchDispatcherFilter.java:61)
        at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)
        at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)
        at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)
        at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.confluence.util.ClusterHeaderFilter.doFilter(ClusterHeaderFilter.java:37)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.johnson.filters.AbstractJohnsonFilter.doFilter(AbstractJohnsonFilter.java:72)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170)
        at com.atlassian.spring.filter.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:29)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.confluence.util.ConfluenceErrorFilter.doFilter(ConfluenceErrorFilter.java:22)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.util.profiling.filters.ProfilingFilter.doFilter(ProfilingFilter.java:99)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.confluence.core.datetime.RequestTimeThreadLocalFilter.doFilter(RequestTimeThreadLocalFilter.java:35)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.gzipfilter.GzipFilter.doFilterInternal(GzipFilter.java:74)
        at com.atlassian.gzipfilter.GzipFilter.doFilter(GzipFilter.java:51)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.core.filters.cache.AbstractCachingFilter.doFilter(AbstractCachingFilter.java:33)
        at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46)
        at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)
        at com.atlassian.prettyurls.filter.PrettyUrlsCombinedMatchDispatcherFilter.doFilter(PrettyUrlsCombinedMatchDispatcherFilter.java:61)
        at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)
        at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)
        at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter$1.doFilter(DelegatingPluginFilter.java:66)
        at com.atlassian.confluence.extra.webdav.servlet.filter.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:427)
        at com.atlassian.confluence.extra.webdav.servlet.filter.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:34)
        at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:74)
        at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:42)
        at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:77)
        at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:63)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.confluence.web.filter.validateparam.RequestParamValidationFilter.doFilter(RequestParamValidationFilter.java:58)
        at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.confluence.web.filter.TranslationModeFilter.doFilter(TranslationModeFilter.java:43)
        at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.confluence.plugin.servlet.filter.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:71)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.confluence.web.filter.LanguageExtractionFilter.doFilter(LanguageExtractionFilter.java:53)
        at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.confluence.util.RequestCacheThreadLocalFilter.doFilter(RequestCacheThreadLocalFilter.java:25)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.confluence.web.filter.DebugFilter.doFilter(DebugFilter.java:50)
        at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.core.filters.encoding.AbstractEncodingFilter.doFilter(AbstractEncodingFilter.java:41)
        at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.core.filters.HeaderSanitisingFilter.doFilter(HeaderSanitisingFilter.java:44)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.atlassian.confluence.servlet.FourOhFourErrorLoggingFilter.doFilter(FourOhFourErrorLoggingFilter.java:65)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:563)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
        at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
        at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
        at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:776)
        at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:705)
        at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:898)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
        at java.lang.Thread.run(Unknown Source)
garysweaver commented 10 years ago

Looks like the embedded-crowd-api has either changed or is just not available for some reason. I did a quick look and the method is still in the published api doc here, but will have to wait until later this evening or later in the week to determine what is going wrong. I don't think it is your configuration.

Could you let me know exactly which version of Confluence this is happening with? (I think last time you mentioned both 5.1 and 5.3, but the patch level like 5.3.0 or 5.3.2 would help.), and list the crowd jars under the root of the Confluence application (if on a _nix server, maybe can cd (path to confluence installation) && find . -name "_crowd*.?ar".

itasv commented 10 years ago

Sorry, I forgot all about that: I am running 5.3.1 (newest version) on this particular machine. 5.3.0 is still up and running with your authenticator on the other machine.

I have also noticed that debug logging doesn't work with this installation.

log4j.appender.confluencelog=org.apache.log4j.ConsoleAppender log4j.logger.shibauth.confluence.authentication.shibboleth=DEBUG, confluencelog

That does nothing. Maybe there's a connection there.

Anyways, can you think of a workaround for the time being? I have to have Shib up and running by tomorrow afternoon and I don't think I can downgrade the installation anymore.

You are in fact right about changes in the mentioned jar containers.

I checked in the wrong directory for 5.3. They haven't changed any of the containers. Sorry about that.

This is from 5.3.1

./confluence/WEB-INF/atlassian-bundled-plugins/embedded-crowd-admin-plugin-1.7-m6.jar
./confluence/WEB-INF/lib/crowd-core-2.7.0-rc2.jar
./confluence/WEB-INF/lib/crowd-persistence-file-2.7.0-rc2.jar
./confluence/WEB-INF/lib/embedded-crowd-api-2.7.0-rc2.jar
./confluence/WEB-INF/lib/crowd-api-2.7.0-rc2.jar
./confluence/WEB-INF/lib/crowd-integration-api-2.7.0-rc2.jar
./confluence/WEB-INF/lib/crowd-integration-client-rest-2.7.0-rc2.jar
./confluence/WEB-INF/lib/crowd-integration-seraph25-2.7.0-rc2.jar
./confluence/WEB-INF/lib/crowd-integration-client-common-2.7.0-rc2.jar
./confluence/WEB-INF/lib/atlassian-embedded-crowd-atlassian-user-1.7-m6.jar
./confluence/WEB-INF/lib/crowd-events-2.7.0-rc2.jar
./confluence/WEB-INF/lib/crowd-persistence-2.7.0-rc2.jar
./confluence/WEB-INF/lib/crowd-password-encoders-2.7.0-rc2.jar
./confluence/WEB-INF/lib/embedded-crowd-spi-2.7.0-rc2.jar
./confluence/WEB-INF/lib/crowd-ldap-2.7.0-rc2.jar
./confluence/WEB-INF/lib/crowd-remote-2.7.0-rc2.jar
./confluence/WEB-INF/lib/embedded-crowd-core-2.7.0-rc2.jar

and 5.3

atlassian-embedded-crowd-atlassian-user-1.7-m6.jar
crowd-api-2.7.0-rc2.jar
crowd-core-2.7.0-rc2.jar
crowd-events-2.7.0-rc2.jar
crowd-integration-api-2.7.0-rc2.jar
crowd-integration-client-common-2.7.0-rc2.jar
crowd-integration-client-rest-2.7.0-rc2.jar
crowd-integration-seraph25-2.7.0-rc2.jar
crowd-ldap-2.7.0-rc2.jar
crowd-password-encoders-2.7.0-rc2.jar
crowd-persistence-2.7.0-rc2.jar
crowd-persistence-file-2.7.0-rc2.jar
crowd-remote-2.7.0-rc2.jar
embedded-crowd-api-2.7.0-rc2.jar
embedded-crowd-core-2.7.0-rc2.jar
embedded-crowd-spi-2.7.0-rc2.jar
itasv commented 10 years ago

Please reread my last comment. Not sure if you get a notice whenever someone edits their entries.

Thank you

itasv commented 10 years ago

Hey Gary,

hold your horses on the matter. It might be something with our database that is not quite right. That is also something that is different to the other Confluence instances as we use an external database on this one. The database guy has already gone home so I will let you know how this is working out in the morning.

2013-11-07 16:04:29,178 INFO [scheduler_Worker-2] [atlassian.confluence.user.DefaultUserAccessor] getUserNamesWithConfluenceAccess Could not find group configured with USE permission: null

https://confluence.atlassian.com/display/CONFKB/Unable+to+Add+Users+into+a+Group+Due+to+Lack+of+Permission

The affected user directory needs to have permission to perform some tasks, including adding users into a group, creating, editing, and deleting a group/user, etc. By default, there should be 12 default permissions created for each user directory. 

Thanks again

itasv commented 10 years ago

I have tried adding users to groups with the Confluence authenticator and that still works. Just FYI.

itasv commented 10 years ago

We have checked the permissions and flushed the cache and checked the permissions but still to no avail.

Directory Config Summary

Allowed operations: [CREATE_ROLE, UPDATE_USER, UPDATE_USER_ATTRIBUTE, DELETE_USER, UPDATE_ROLE_ATTRIBUTE, DELETE_GROUP, UPDATE_ROLE, CREATE_GROUP, DELETE_ROLE, CREATE_USER, UPDATE_GROUP_ATTRIBUTE, UPDATE_GROUP]

As I said in one of my previous entries, Shib-Logging doesn't work at all and the plugin isn't even listed on the 'Logging and Profiling' page. I would assume there's a connection there. It's still weird because the authenticator is allowed to register new users but can't put them in groups.

Any ideas?

Thank you

Edit 1: The Plugin manager is working properly (or so it claims)

Add-ons requiring action

These add-ons need your attention. Add-ons that are unlicensed, expiring soon, or have available updates will be in this list.

Congratulations! None of your add-ons currently require attention.

Edit2: I have now additionally added shibauth.confluence.authentication.shibboleth to the log settings using the Confluence web administration console and debug logging is now working.

Edit3: I have just now noticed that the problem also exists with Confluence 5.3. I just never noticed because all of our users already had accounts for that Confluence instance and were therefore already in the confluence-users group.

Edit4: Programmer with a similar issue: https://answers.atlassian.com/questions/230328/add-user-to-group-in-java-api

erkkiaalto commented 10 years ago

I can confirm it does not work in 5.3. Everything was OK in 5.2.

itasv commented 10 years ago

Thank you very much, @erkkiaalto.

Alright, the solution has to be somewhere in one of those files. Here's an MD5sum based comparison of them.

Confluence 5.2.3

113830e9e8364b04313be97af6c28b32  atlassian-embedded-crowd-atlassian-user-1.6.1.jar
be82b10586b8118e639601fdf51809cb  crowd-api-2.6.2.jar
d9ed3a3ef68a102f2b4bac1938ca02b4  crowd-core-2.6.2.jar
2baed2d5c32a7fe5e311a743e6f6d9d2  crowd-events-2.6.2.jar
9bfb666826c626ea61cf47bed1261b80  crowd-integration-api-2.6.2.jar
1fe62fc3e4eb669634a69032f611584e  crowd-integration-client-common-2.6.2.jar
f4ae7a89754911e06f0df12f25c98009  crowd-integration-client-rest-2.6.2.jar
7ba284c274d784e3e35b8c78f67007a1  crowd-integration-seraph25-2.6.2.jar
09b480bd4f06d1c802f34248dcf37fee  crowd-ldap-2.6.2.jar
04d4b4cf15a310085a4477cd6359f29f  crowd-password-encoders-2.6.2.jar
98b6478717ca749f1dce185b2f5a8174  crowd-persistence-2.6.2.jar
2d78a056f6321f207ffd3e008a6559b8  crowd-persistence-file-2.6.2.jar
88c5be7f7b9a2b5d407dff12ea29abf8  crowd-remote-2.6.2.jar
bf89b3a25af3dde79b33b4b682df814c  embedded-crowd-api-2.6.2.jar
b3ae64cc2667ba74d1dc550175d2dcdc  embedded-crowd-core-2.6.2.jar
dc12b4c3014eac802761c466040919f1  embedded-crowd-spi-2.6.2.jar

Confluence 5.3.1

6a94b5f47a3219cc6fca5e8463f8d8ba  atlassian-embedded-crowd-atlassian-user-1.7-m6.jar
f84f9c1cd070b4c12635308a2280a5d1  crowd-api-2.7.0-rc2.jar
f7dbe50de3c3dbd5a0bf0ff98d150ead  crowd-core-2.7.0-rc2.jar
7b126b13cedbefca76f7bf9989968a25  crowd-events-2.7.0-rc2.jar
b17729e5c6b72df74baa96d423b6ab85  crowd-integration-api-2.7.0-rc2.jar
553052463684ee9a06e8ff46c565a3b7  crowd-integration-client-common-2.7.0-rc2.jar
28d40eb7e7d076a3a2b748bc1ac97d22  crowd-integration-client-rest-2.7.0-rc2.jar
4d3a74569db3be972f7081f80d23151a  crowd-integration-seraph25-2.7.0-rc2.jar
09e7d31456486a056d722151389f5af0  crowd-ldap-2.7.0-rc2.jar
cedf63215e22922a4dc809c81869638f  crowd-password-encoders-2.7.0-rc2.jar
3b1fdb809555ad4be34673070d86aa43  crowd-persistence-2.7.0-rc2.jar
367589eaa149670d515a70a09294b868  crowd-persistence-file-2.7.0-rc2.jar
f2669b76dac20f508c5702b9eb24b158  crowd-remote-2.7.0-rc2.jar
46164263f84ec6b097df760aac6e8a94  embedded-crowd-api-2.7.0-rc2.jar
3cf25dbac7cde80d64825f2af17f0751  embedded-crowd-core-2.7.0-rc2.jar
dec0bafc9828db967668815278ad14da  embedded-crowd-spi-2.7.0-rc2.jar

Is there anything else I can do to help fix the problem?

garysweaver commented 10 years ago

@itasv is this a production instance or a test/dev/staging instance?

itasv commented 10 years ago

Starting today, it is a semi-production machine, but I suppose I can still grab a maintenance window without giving too much of an early notice. The other machine I have can be used for testing for the next few days but will then also be a production machine.

garysweaver commented 10 years ago

@itasv What I meant was- did you upgrade a production server and break it? How can it work without working authN? Sorry for the misunderstanding. I just wanted to understand the priority of a fix. Unfortunately now I'm going to have to wait until later to look into it. Note that it is not a plugin. It is an authenticator. It doesn't use the plugin framework because Atlassian did not support authenticators as plugins. It allows authenticators- they just don't use that framework.

itasv commented 10 years ago

@garysweaver, no, I didn't break anything per se. The authenticator still works fine except for adding new users to groups automatically.

erkkiaalto commented 10 years ago

I finally RTFS. addUserToGroup has changed from void to boolean. Just changing the Confluence version from 5.0 to 5.3 in pom.xml and rebuilding fixed the problem. (Possibly changing the call to addUserToGroup would be at least pretty)

garysweaver commented 10 years ago

Released in https://github.com/chauth/confluence_http_authenticator/blob/master/releases/remoteUserAuth-2.4.0.jar

Let me know if that doesn't work. Thanks!