Autenticación

Si MongoDB se inicia con las opciones --auth o --keyFile, se debe autenticar antes de poder realizar cualquier operación con el controlador. Se podría autenticar una conexión especificando el nombre de usuario y la contraseña, o bien en el URI de conexión, o bien en las opciones "username" y "password" de MongoClient::__construct().

Ejemplo #1 Autenticación en la base de datos "admin"

<?php
// Especificar el nombre de usuario y la contraseña en el URI de conexión (preferido)
$m = new MongoClient("mongodb://${username}:${password}@localhost");

// Especificar el nombre de usuario y la contraseña mediante el array de opciones (alternativa)
$m = new MongoClient("mongodb://localhost", array("username" => $username"password" => $password));
?>

Por omisión, el controlador autenticará en la base de datos admin. Se podría autenticar en una base de datos diferente especificándola en el URI de conexión o en la opción "db" de MongoClient::__construct().

Ejemplo #2 Autenticación en bases de datos normales

<?php
// Especificar la base de datos de autenticación en la URI de conexión (preferido)
$m = new MongoClient("mongodb://${username}:${password}@localhost/myDatabase");

// Especificar la base de datos de autenticación mediante el array de opciones (alternativa)
$m = new MongoClient("mongodb://${username}:${password}@localhost", array("db" => "myDatabase"));
?>

Si la conexión se your connection is dropped, the driver will automatically attempt to reconnect and reauthenticate you.