MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

autenticazione mongodb con stringa di connessione

Con il driver C# in genere non si utilizza l'opzione di inserire un nome di database nella stringa di connessione. È parzialmente supportato per fornire un certo livello di compatibilità con altri driver.

MongoServer.Create ignora il nome del database. Eventuali credenziali (nome utente/password) sulla stringa di connessione vengono utilizzate come credenziali predefinite per tutti i database.

Il nome del database viene utilizzato solo da MongoDatabase.Create, che chiama MongoServer.Create e quindi chiama solo GetDatabase per te.

Quindi:

var connectionString = "mongodb://localhost/database";
var database = MongoDatabase.Create(connectionString);

è solo una scorciatoia per:

var connectionString = "mongodb://localhost";
var server = MongoServer.Create(connectionString);
var database = server.GetDatabase("database");

In realtà non viene eseguita alcuna autenticazione finché non si tenta per la prima volta di utilizzare un database.