Log in to this database

MongoDB
MongoDB::command
MongoDB
PHP Manual

# MongoDB::authenticate

(PECL mongo >=1.0.1)

MongoDB::authenticate — Log in to this database

### Description

public array MongoDB::authenticate ( string `$username` , string `$password` )

This method causes its connection to be authenticated. If authentication is enabled for the database server (it's not, by default), you need to log in before the database will allow you to do anything.

This method is identical to running:

`<?php
$salted = "${username}:mongo:${password}";
$hash = md5($salted);
$nonce = $db->command(array("getnonce" => 1));
$saltedHash = md5($nonce["nonce"]."${username}${hash}");
$result = $db->command(array("authenticate" => 1,
"user" => $username,
"nonce" => $nonce["nonce"],
"key" => $saltedHash);
?>`

Once a connection has been authenticated, it can only be un-authenticated by using the "logout" database command:

`<?php
$db->command(array("logout" => 1));
?>`

### Parameters

`username`

  The username.

`password`

  The password (in plaintext).

### Return Values

Returns database response. If the login was successful, it will return

`array("ok" => 1)`
If something went wrong, it will return
`array("ok" => 0, "errmsg" => "auth fails")`
("auth fails" could be another message, depending on database version and what when wrong).

### See Also

MongoDB core docs on » authenticate.

MongoDB
MongoDB::command
MongoDB
PHP Manual