diff --git a/app/controllers/admin/users_controller.rb b/app/controllers/admin/users_controller.rb
index 0f1ac74f6..c0f246952 100644
--- a/app/controllers/admin/users_controller.rb
+++ b/app/controllers/admin/users_controller.rb
@@ -273,7 +273,7 @@ class Admin::UsersController < Admin::AdminController
     return render nothing: true, status: 404 unless SiteSetting.enable_sso
 
     sso = DiscourseSingleSignOn.parse("sso=#{params[:sso]}&sig=#{params[:sig]}")
-    user = sso.lookup_or_create_user(request.remote_ip)
+    user = sso.lookup_or_create_user
 
     render_serialized(user, AdminDetailedUserSerializer, root: false)
   end
diff --git a/app/models/discourse_single_sign_on.rb b/app/models/discourse_single_sign_on.rb
index 6c3597a1d..1c3770d86 100644
--- a/app/models/discourse_single_sign_on.rb
+++ b/app/models/discourse_single_sign_on.rb
@@ -42,7 +42,7 @@ class DiscourseSingleSignOn < SingleSignOn
     "SSO_NONCE_#{nonce}"
   end
 
-  def lookup_or_create_user(ip_address)
+  def lookup_or_create_user(ip_address=nil)
     sso_record = SingleSignOnRecord.find_by(external_id: external_id)
 
     if sso_record && user = sso_record.user
diff --git a/spec/controllers/admin/users_controller_spec.rb b/spec/controllers/admin/users_controller_spec.rb
index 60d492ccf..114b62b67 100644
--- a/spec/controllers/admin/users_controller_spec.rb
+++ b/spec/controllers/admin/users_controller_spec.rb
@@ -499,7 +499,7 @@ describe Admin::UsersController do
     sso.external_id = "1"
 
     user = DiscourseSingleSignOn.parse(sso.payload)
-                                .lookup_or_create_user('127.0.0.1')
+                                .lookup_or_create_user
 
 
     sso.name = "Bill"
@@ -514,6 +514,20 @@ describe Admin::UsersController do
     expect(user.name).to eq("Bill")
     expect(user.username).to eq("Hokli")
 
+    # It can also create new users
+    sso = SingleSignOn.new
+    sso.sso_secret = "sso secret"
+    sso.name = "Dr. Claw"
+    sso.username = "dr_claw"
+    sso.email = "dr@claw.com"
+    sso.external_id = "2"
+    xhr :post, :sync_sso, Rack::Utils.parse_query(sso.payload)
+    expect(response).to be_success
+
+    user = User.where(email: 'dr@claw.com').first
+    expect(user).to be_present
+    expect(user.ip_address).to be_blank
+
   end
 
 end