Here's the syntax for a mongodb, mongoose, node setup. 
- Create the database user in the admin database from the mongo shell - use admin
 - db.addUser( { user: "mydbuser", pwd: "mypassword", roles: [ ] } )
 
- Create the database and add the user - the userSource indicates that
the credentials are defined in the admin database - use mydb
 - db.addUser( { user: "mydbuser", userSource: "admin" , roles: [ "readWrite" , "dbAdmin"] } )
 
- Specify the auth parameter in the mongoose connection string - var myDB = mongoose.createConnection("mongodb://mydbuser:mypassword@myipaddress:27017/mydb" ,{auth:{authdb:"admin"}});
 - the option {auth:...} is what specifies that the user account must be authenticated against the admin db.  
- Similarly to connect to the database from the mongo shell - mongo myipaddr:27017/mydb -u "mydbuser" -p "mypassword"
 
Note: The user "mydbuser" had only read/write and admin access to mydb. you can find more information on user privileges here. A fuller example of the scenario is here