Mongodb php身份验证。Mongo/admin.php在哪里?
I.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"; ...
我是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
sudo pecl install mongo
)谢谢我想你对身份验证感到困惑 默认情况下,无论是否添加这些类,Mongo都会以经过身份验证的用户身份登录 您引用的类是管理类和服务器控制类。它们有效地为root用户提供了访问一切的权限 只要在MongoDB连接字符串中添加用户名和密码以进行身份验证就足够了,您不需要这些类。例如:
mongodb://root:awesome_password@localhost:27017
这将启动PHP驱动程序中的默认身份验证。它们位于扩展源中:-您可能需要将它们复制到“本地扩展”目录中。???为什么它们不在一个普通的pecl安装中?出于安全原因,它们是不可或缺的!我认为这是因为大多数人喜欢将DB admin从应用程序中分离出来,这被认为是一个安全问题,因为你的应用程序现在可以控制服务器本身。但这只是一个帮助类,你可以很容易地创建自己的类。事实上,如果你看这里:你会发现它们没有什么特别之处,你可以不用它们来执行所有这些操作。好吧,但我必须进行身份验证,即使我想向任何数据库的任何集合添加一个文档。这不是行政管理。是吗?谢谢你的回答。但它解决了我的部分问题。请问你有什么解决办法吗?