Index: sonar-web/src/main/webapp/WEB-INF/lib/need_authentication.rb
===================================================================
--- sonar-web/src/main/webapp/WEB-INF/lib/need_authentication.rb	(revision 4134)
+++ sonar-web/src/main/webapp/WEB-INF/lib/need_authentication.rb	(working copy)
@@ -88,8 +88,17 @@
       #
       def authenticate(login, password)
         return nil if login.blank?
+        return nil if !AuthenticatorFactory.authenticator.authenticate?(login, password)
         user=User.find_by_login(login)
-        (user && AuthenticatorFactory.authenticator.authenticate?(login, password)) ? user : nil
+        if !user
+          # Automatically create a user in the sonar db if authentication has been successfully done
+          User.create(:login => login, :name => login, :email => '', :password => password, :password_confirmation => password)
+          default_group=Group.find_by_name('sonar-users')
+          user=User.find_by_login(login)
+          user.groups<<default_group
+          user.save
+        end
+        return user ? user : nil
       end
 
       def editable_password?
