MongoDB 权限验证(KEY: Mongo; MongoDB; 安全验证; 权限)

 

首先我得删除 之前建的服务TAT

sc delete "MongoDB"

重新创建服务加上--auth参数

D:\MongoDB>mongod --dbpath D:\MongoDB\Data --logpath D:\MongoDB\Log\MongoDB.log --logappend --serviceName MongoDB --auth --install
all output going to: D:\MongoDB\Log\MongoDB.log
Creating service MongoDB.
Service creation successful.
Service can be started from the command line via 'net start "MongoDB"'.

这时再用mongo启动就会提示没有权限了

> show users
Wed Aug 17 09:53:30 uncaught exception: error: {
        "$err" : "unauthorized db:admin lock type:-1 client:127.0.0.1",
        "code" : 10057
}

可以用-u -p参数登陆 -> mongo [库名] -u [用户名] -p

D:\MongoDB>mongo admin -u admin -p
MongoDB shell version: 1.8.2
Enter password:
connecting to: admin

当然了。再此之前不要忘记先创建用户,在admin库下的用户是全局的

use [database]

db.addUser('admin','pwd')

show users

如果需要创建一个只读的用户:

db.addUser('rousr','pwd', true)

 

下面是再c#中的安全验证:

链接字符串格式:mongodb://[username:password@]hostname[:port][/[database][?options]]

 只要将之前例子的链接字符串改为 "mongodb://uname:pwd@localhost" 就可以了

。。。我之前设的密码中含有@,所以。。。TAT

修改密码和创建用户命令是一样的

db.addUser('admin', 'newpwd')

 

其他常用命令请点击 -》 常用命令

 

http://hi.baidu.com/pappercut/blog/item/4fc5281fd2873ed2a7866997.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值