mongodb 3.0改变了authMechanism

时间:2015-09-02 17:19:12

标签: php mongodb authentication

我想尝试使用mongo db与php。如果我使用mongodb与cli我没有问题连接,使用和身份验证。

但是当我使用php MongoClient

$db=new MongoClient("mongodb://localhost:27017",array(
"username" => "ehc",
"password" => "pippo"));

$db->selectDB("ehc");
#print_r($db);
$db->close();

我有这个错误:

  

致命错误:未捕获的异常' MongoConnectionException'消息'无法连接到:localhost:27017:数据库' admin'上的身份验证失败使用用户名' ehc':auth failed'在第5行的C:\ wamp \ www \ easyhomecosts \ server \ mongo.php

问题是authMechanism用于用户" ehc"

{
  "_id" : "ehc.ehc",
  "user" : "ehc",
  "db" : "ehc",
  "credentials" : {
    "SCRAM-SHA-1" : {
      "iterationCount" : 10000,
      "salt" : "vG26EfcIDTFYq4t2Lki9MA==",
      "storedKey" : "h11Z6bCDtiKAnofqC70FvB9fe7Q=",
      "serverKey" : "pwnXi+Oz6yjXKP2WoJu9bKPRk1c="
    }
  },
  "roles" : [{
      "role" : "dbOwner",
      "db" : "ehc"
    }]
}

我会为用户改变authMechanism" ehc"来自 MONGODB-CR 中的 SCRAM-SHA-1 。 之后我会为下一个用户改变聋人的authMechanism

你可以帮帮我吗?

1 个答案:

答案 0 :(得分:0)

MONGODB-CR已从MongoDB版本3.0中删除,只剩下SCRAM-SHA-1。 有许多工具和应用程序仍然只使用MONGODB-CR模式,并且有一种解决方法可以将其放回到3.0实例。看看这里:
https://jira.mongodb.org/browse/SERVER-17459