Not sure of the Server options for authentication. The preferred method now is to use the MongoClient class for connections like so:
var MongoClient = require("mongodb").MongoClient;
MongoClient.connect(
"mongodb://<user>:<pass>@<host>:<port>/<db>", function(err, db) {
// everything else inside your "open.db" call
Which is preferred, but just in case there is something wrong with the way credentials are being passed in, as this way is well documented. This is just to make sure you are connecting as the user account you are intending to use.
Beyond that, as long as this is the right user, then the error suggests that this user lacks the permission to do the insert on the database. So you might need to check the permissions that have been granted to the use. So the account would need the readWrite role to be applied.