Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在MongoDB中插入密码_Mongodb - Fatal编程技术网

在MongoDB中插入密码

在MongoDB中插入密码,mongodb,Mongodb,插入数据时,是否有方法将字符串从mongo命令行转换为哈希?我想手工插入帐户详细信息,并根据需要创建尽可能多的用户。如果我正确理解了您的问题,您需要从shell中散列一个值。我不明白你为什么需要这个,但我会尝试给你一些解决方案的方法 定制解决方案: mongoDB有存储过程,可以用JS编写,也可以从任何上下文调用。这将为您提供100%的所有权来编写存储过程并从shell中调用它。在本例中,我正在调用我以前创建的“fromStringToHash”函数 db.loadServerScripts()

插入数据时,是否有方法将字符串从mongo命令行转换为哈希?我想手工插入帐户详细信息,并根据需要创建尽可能多的用户。

如果我正确理解了您的问题,您需要从shell中散列一个值。我不明白你为什么需要这个,但我会尝试给你一些解决方案的方法

定制解决方案:

mongoDB有存储过程,可以用JS编写,也可以从任何上下文调用。这将为您提供100%的所有权来编写存储过程并从shell中调用它。在本例中,我正在调用我以前创建的“fromStringToHash”函数

db.loadServerScripts();
db.PasswordTest.insert({"name":"Daniele", "password": "notSecure"});
db.PasswordTest.insert({"name":"Daniele", "password": fromStringToHash("theSecretPassword")});

MD5

如果您只需要一种计算散列的方法,请看一看

db.PasswordTest.insert({"name":"Daniele", "password": hex_md5("theSecretPassword")});

您还可以使用这两种解决方案(一种内部调用hex_md5的存储过程,以便将来可以自由更改该函数)。此函数可从MongoDB shell上下文中获得。

是否从shell中获得?有什么原因不能用另一种语言来做吗?在驱动程序可用的地方,你可以用任何语言编写脚本或程序。我可以使用Node.js。问题是我不想创建任何人都可以注册的特定页面@NeilLunnSo然后使用Node.js。有什么问题吗?找到一个库并“加密”(这不同于散列)你的密码。@wickerman让我了解一下。。。是否需要类似于:db.PasswordTest.insert({“name”:“Daniele”,“password”:“notSecure”});插入({“name”:“Daniele”,“password”:fromStringToHash(“theSecretPassword”)});要从Mongo Shell中使用以创建哈希?您是在寻找特定的哈希算法还是MD5适合您?是的!MD5还可以。我使用了db.CollectionName({“name”:“TestName”,“email”:”test@test.com“,”密码“:”pass“}),使用“email”作为登录帐户,密码作为pass@达涅拉松