diff --git a/src/password.js b/src/password.js index 04f123375..3e60c2d0b 100644 --- a/src/password.js +++ b/src/password.js @@ -5,8 +5,7 @@ // From https://www.npmjs.com/package/password-generator exports = module.exports = { - generate: generate, - validate: validate + generate: generate }; var assert = require('assert'), @@ -37,11 +36,3 @@ function generate() { return password; } - -function validate(password) { - assert.strictEqual(typeof password, 'string'); - - if (!password.match(gPasswordTestRegExp)) return new Error('Password must be 8-30 character with at least one uppercase, one numeric and one special character'); - - return null; -} diff --git a/src/test/users-test.js b/src/test/users-test.js index e8f368f9a..01d8bed93 100644 --- a/src/test/users-test.js +++ b/src/test/users-test.js @@ -128,36 +128,6 @@ describe('User', function () { }); }); - it('fails due to missing upper case password', function (done) { - users.create(USERNAME, 'thisiseightch%$234arslong', EMAIL, DISPLAY_NAME, AUDIT_SOURCE, function (error, result) { - expect(error).to.be.ok(); - expect(result).to.not.be.ok(); - expect(error.reason).to.equal(UsersError.BAD_FIELD); - - done(); - }); - }); - - it('fails due to missing numerics in password', function (done) { - users.create(USERNAME, 'foobaRASDF%', EMAIL, DISPLAY_NAME, AUDIT_SOURCE, function (error, result) { - expect(error).to.be.ok(); - expect(result).to.not.be.ok(); - expect(error.reason).to.equal(UsersError.BAD_FIELD); - - done(); - }); - }); - - it('fails due to missing special chars in password', function (done) { - users.create(USERNAME, 'foobaRASDF23423', EMAIL, DISPLAY_NAME, AUDIT_SOURCE, function (error, result) { - expect(error).to.be.ok(); - expect(result).to.not.be.ok(); - expect(error.reason).to.equal(UsersError.BAD_FIELD); - - done(); - }); - }); - it('fails due to reserved username', function (done) { users.create('admin', PASSWORD, EMAIL, DISPLAY_NAME, AUDIT_SOURCE, function (error, result) { expect(error).to.be.ok(); diff --git a/src/users.js b/src/users.js index 35aa495ba..7b1bc12df 100644 --- a/src/users.js +++ b/src/users.js @@ -45,7 +45,6 @@ var assert = require('assert'), userdb = require('./userdb.js'), util = require('util'), uuid = require('uuid'), - validatePassword = require('./password.js').validate, validator = require('validator'), _ = require('underscore'); @@ -122,6 +121,14 @@ function validateDisplayName(name) { return null; } +function validatePassword(password) { + assert.strictEqual(typeof password, 'string'); + + if (password.length < 8) return new UsersError(UsersError.BAD_FIELD, 'Password must be atleast 8 characters'); + + return null; +} + function removePrivateFields(user) { return _.pick(user, 'id', 'username', 'email', 'fallbackEmail', 'displayName', 'groupIds', 'admin'); }