Mongodb php身份验证。Mongo/admin.php在哪里?

Mongodb php身份验证。Mongo/admin.php在哪里?,php,mongodb,authentication,Php,Mongodb,Authentication,I. 我是mongodb的新手,看起来很酷 出于安全原因,我将mongod配置为使用auth=true启动 现在,根据认证§ 要访问管理功能,必须使用Mongouth(已登录 到特定数据库)或MongoAdmin(对所有数据库的根访问)。 这些不包括在内置PHP扩展中,因此您必须 包括或要求文件Admin.php和Auth.php。他们在公园里 在php/Mongo/下下载源代码。假设您的桌面上有php/文件 包括路径,您可以说: include "Mongo/Admin.php"; ...

I.
我是mongodb的新手,看起来很酷

出于安全原因,我将mongod配置为使用
auth=true
启动

现在,根据认证§

要访问管理功能,必须使用Mongouth(已登录 到特定数据库)或MongoAdmin(对所有数据库的根访问)。 这些不包括在内置PHP扩展中,因此您必须 包括或要求文件Admin.php和Auth.php。他们在公园里 在php/Mongo/下下载源代码。假设您的桌面上有php/文件 包括路径,您可以说:

include "Mongo/Admin.php";
...
我在/var/share/php、/var/share/php/PEAR中搜索过,没有找到Admin或Auth.php

  • 这些文件是否包含在公共PEAR安装中? (假设常见安装为
    sudo pecl install mongo
  • 如果没有,如何安装

  • 谢谢

    我想你对身份验证感到困惑

    默认情况下,无论是否添加这些类,Mongo都会以经过身份验证的用户身份登录

    您引用的类是管理类和服务器控制类。它们有效地为root用户提供了访问一切的权限

    只要在MongoDB连接字符串中添加用户名和密码以进行身份验证就足够了,您不需要这些类。例如:

    mongodb://root:awesome_password@localhost:27017
    

    这将启动PHP驱动程序中的默认身份验证。

    它们位于扩展源中:-您可能需要将它们复制到“本地扩展”目录中。???为什么它们不在一个普通的pecl安装中?出于安全原因,它们是不可或缺的!我认为这是因为大多数人喜欢将DB admin从应用程序中分离出来,这被认为是一个安全问题,因为你的应用程序现在可以控制服务器本身。但这只是一个帮助类,你可以很容易地创建自己的类。事实上,如果你看这里:你会发现它们没有什么特别之处,你可以不用它们来执行所有这些操作。好吧,但我必须进行身份验证,即使我想向任何数据库的任何集合添加一个文档。这不是行政管理。是吗?谢谢你的回答。但它解决了我的部分问题。请问你有什么解决办法吗?