VulcanJS / vulcan-next

The Next starter for GraphQL developers
http://vulcan-docs.vercel.app
MIT License
395 stars 29 forks source link

Error when logging in: The "salt" argument must be of type string or an instance of ArrayBuffer, Buffer, TypedArray, or DataView. Received undefined #163

Open alexflint opened 2 years ago

alexflint commented 2 years ago

Describe the bug

When I try to log in with the default admin user at http://localhost:3000/account/login, I get the following error

TypeError [ERR_INVALID_ARG_TYPE]: The "salt" argument must be of type string or an instance of ArrayBuffer, Buffer, TypedArray, or DataView. Received undefined
    at check (node:internal/crypto/pbkdf2:93:10)
    at Object.pbkdf2Sync (node:internal/crypto/pbkdf2:70:5)
    at checkPasswordForUser (webpack-internal:///(api)/./src/lib/api/account/accountManagement.ts:74:62)
    at findUserByCredentials (webpack-internal:///(api)/./src/lib/api/account/accountManagement.ts:100:26)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5) {
  code: 'ERR_INVALID_ARG_TYPE'
}

To Reproduce

  1. Start a standard vulcan app
  2. Go to the login page
  3. Log in with the default admin credentials from .env.development

Expected behavior I expected to be logged in

Screenshots (if applicable) image

Desktop (if applicable):

eric-burel commented 2 years ago

Are you sure your accountManagement file is up to date? This happens if "user.salt" is not defined, what do you have in the db for this user?