瀏覽代碼

Merge pull request #922 from sharelatex/ta-forbid-null-query

Prevent Calls to UserGetter.getUser with Null Query
Timothée Alby 8 年之前
父節點
當前提交
b6925647ef

+ 1 - 0
services/web/app/coffee/Features/User/UserGetter.coffee

@@ -8,6 +8,7 @@ Errors = require("../Errors/Errors")
 
 
 module.exports = UserGetter =
 module.exports = UserGetter =
 	getUser: (query, projection, callback = (error, user) ->) ->
 	getUser: (query, projection, callback = (error, user) ->) ->
+		return callback(new Error("no query provided")) unless query?
 		if query?.email?
 		if query?.email?
 			return callback(new Error("Don't use getUser to find user by email"), null)
 			return callback(new Error("Don't use getUser to find user by email"), null)
 		if arguments.length == 2
 		if arguments.length == 2

+ 5 - 0
services/web/test/unit/coffee/User/UserGetterTests.coffee

@@ -48,6 +48,11 @@ describe "UserGetter", ->
 				error.should.exist
 				error.should.exist
 				done()
 				done()
 
 
+		it "should not allow null query", (done)->
+			@UserGetter.getUser null, {}, (error, user) =>
+				error.should.exist
+				done()
+
 	describe "getUserFullEmails", ->
 	describe "getUserFullEmails", ->
 		it "should get user", (done)->
 		it "should get user", (done)->
 			@UserGetter.getUser = sinon.stub().callsArgWith(2, null, @fakeUser)
 			@UserGetter.getUser = sinon.stub().callsArgWith(2, null, @fakeUser)