認証
MongoDB を --auth
あるいは
--keyFile
オプションつきで起動すると、
まずログインしないとドライバを使った操作ができなくなります。
接続時の認証をするには、ユーザー名とパスワードを接続 URI に指定するか、あるいは
MongoClient::__construct() でオプション
"username"
および "password"
を指定します。
例1 "admin" データベースに対する認証
<?php// ユーザー名とパスワードを接続 URI で指定する方法 (推奨)$m = new MongoClient("mongodb://${username}:${password}@localhost");// ユーザー名とパスワードをオプションの配列で指定する方法 (別の方法)$m = new MongoClient("mongodb://localhost", array("username" => $username, "password" => $password));?>
デフォルトでは、ドライバは admin
データベースに対する認証を試みます。別のデータベースに対する認証をするには、
データベースを接続 URI に指定するか、あるいは
MongoClient::__construct() でオプション
"db"
を指定します。
例2 通常のデータベースに対する認証
<?php// 認証データベースを接続 URI で指定する方法 (推奨)$m = new MongoClient("mongodb://${username}:${password}@localhost/myDatabase");// 認証データベースをオプションの配列で指定する方法 (別の方法)$m = new MongoClient("mongodb://${username}:${password}@localhost", array("db" => "myDatabase"));?>
接続が落ちると、ドライバが自動的に再接続と再認証を試みます。