Praqma / staci

Containerizing the Atlassian tools stack. Jira, Confluence, Bamboo and a MySQL database.
MIT License
12 stars 5 forks source link

Cannot login to Crowd "Connection to authentication server failed" #12

Open hoeghh opened 8 years ago

hoeghh commented 8 years ago

After installing Crowd, I wasnt able to login to Crowd. I kept getting this message at the login screen: "Connection to authentication server failed. Please review the logs for more information."

In the logfile (docker logs [ID]) I got : 2015-10-26 09:11:26,785 http-bio-8095-exec-24 ERROR [crowd.console.action.Login] Failed to connect to the authentication server, please check your crowd.properties org.springframework.security.authentication.AuthenticationServiceException: Client with address "172.17.42.1" is forbidden from making requests to the application, crowd. at com.atlassian.crowd.integration.springsecurity.CrowdAuthenticationProvider.translateException(CrowdAuthenticationProvider.java:301) at com.atlassian.crowd.integration.springsecurity.CrowdAuthenticationProvider.authenticateUsernamePassword(CrowdAuthenticationProvider.java:164) at com.atlassian.crowd.integration.springsecurity.CrowdAuthenticationProvider.authenticate(CrowdAuthenticationProvider.java:102) at org.springframework.security.authentication.ProviderManager.authenticate(ProviderManager.java:156) at com.atlassian.crowd.integration.springsecurity.DynamicProviderManagerImpl.authenticate(DynamicProviderManagerImpl.java:40) at org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter.attemptAuthentication(UsernamePasswordAuthenticationFilter.java:94) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:211) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)

If i took a look at the table cwd_application_address in the database, i couldnt fint the IP that it complainted about.

mysql> select * from cwd_application_address; +----------------+----------------+ | application_id | remote_address | +----------------+----------------+ | 2 | 127.0.0.1 | | 2 | 172.17.0.18 | | 2 | 192.168.1.104 | | 2 | crowd | | 2 | localhost | +----------------+----------------+

A workaround right now was to insert the ip, and restart the Crowd server. But I need to find out why this happened on a fresh install.

The workaround : mysql> SELECT ID FROM cwd_application WHERE APPLICATION_NAME = 'crowd'; +----+ | ID | +----+ | 2 | +----+

mysql> INSERT INTO cwd_application_address (APPLICATION_ID, REMOTE_ADDRESS) VALUES (2,'172.17.42.1');
Query OK, 1 row affected (0.00 sec)

mysql> exit

Restart the container, and you can login.

hoeghh commented 8 years ago

If i leave the base url intact, everything works. But if i change it to the hosts binding port, it fails.

hoeghh commented 8 years ago

Maybe some help here : https://confluence.atlassian.com/crowdkb/how-to-change-the-crowd-base-url-245827278.html