MongoClient java driver 2.12.1 中如何认证用户?

叶之青 2014-04-30 09:51:50
由于2.12.1废弃原db.authenticate 方法,
看了一些说明,说是采用
MongoClient(List<ServerAddress> seeds, List<MongoCredential> credentialsList)
这种构造方式,但是实验后不明白了,从该类获取的DB还是没有进行认证的,不懂不懂- - 求高手
...全文
482 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
叶之青 2014-05-20
  • 打赏
  • 举报
回复
引用 5 楼 ghbgtyujk 的回复:
[quote=引用 4 楼 ghbgtyujk 的回复:] [quote=引用 3 楼 zjhh116 的回复:] 能验证;只是不显示成功与否的信息判断;但你可以进入mongodb的操作;验证能继续执行数据库操作;否则会报authenticate错误。不过mongodb启动需要加 -auth 的参数。
唉,我就是进行数据库操作报错了,我再调试调试吧[/quote] 另外会不会是我调用DB有问题呢?我是用getDB("test") 获取的。[/quote] 奇葩,今天又试了次,居然可以了,明明记得是验证失败报错的。。。
叶之青 2014-05-20
  • 打赏
  • 举报
回复
引用 4 楼 ghbgtyujk 的回复:
[quote=引用 3 楼 zjhh116 的回复:] 能验证;只是不显示成功与否的信息判断;但你可以进入mongodb的操作;验证能继续执行数据库操作;否则会报authenticate错误。不过mongodb启动需要加 -auth 的参数。
唉,我就是进行数据库操作报错了,我再调试调试吧[/quote] 另外会不会是我调用DB有问题呢?我是用getDB("test") 获取的。
叶之青 2014-05-20
  • 打赏
  • 举报
回复
引用 3 楼 zjhh116 的回复:
能验证;只是不显示成功与否的信息判断;但你可以进入mongodb的操作;验证能继续执行数据库操作;否则会报authenticate错误。不过mongodb启动需要加 -auth 的参数。
唉,我就是进行数据库操作报错了,我再调试调试吧
夜雨孤独客 2014-05-19
  • 打赏
  • 举报
回复
能验证;只是不显示成功与否的信息判断;但你可以进入mongodb的操作;验证能继续执行数据库操作;否则会报authenticate错误。不过mongodb启动需要加 -auth 的参数。
夜雨孤独客 2014-05-16
  • 打赏
  • 举报
回复
ServerAddress sa = new ServerAddress(host, port); List<MongoCredential> mongoCredentialList = new ArrayList<MongoCredential>(); mongoCredentialList.add(MongoCredential.createMongoCRCredential(username, database, password.toCharArray())); new MongoClient(sa, mongoCredentialList); 类似以上的代码就能认证用户名和密码了。
叶之青 2014-05-16
  • 打赏
  • 举报
回复
private MongoClient mongoClientInit(List<MongoDbBean> mongoBbBeanList) { List<ServerAddress> serverAddressList = new ArrayList<ServerAddress>(); List<MongoCredential>mongoCredentialList = new ArrayList<MongoCredential>(); Iterator <MongoDbBean>it = mongoBbBeanList.iterator(); while(it.hasNext()){ MongoDbBean mongoDbBean = (MongoDbBean)it.next(); ServerAddress serverAddress = null; try { serverAddress = new ServerAddress(mongoDbBean.getLocalAddress(),mongoDbBean.getPort()); mongoCredentialList.add(MongoCredential.createMongoCRCredential(mongoDbBean.getUserName(),mongoDbBean.getDatabase(), mongoDbBean.getPassWord().toCharArray())); } catch (UnknownHostException e) { log.error("mongodb数据库连接初始化失败"+e); } if(serverAddress!=null){ serverAddressList.add(serverAddress); } } return new MongoClient(serverAddressList,mongoCredentialList); } 好像是没进行验证的

1,746

社区成员

发帖
与我相关
我的任务
社区描述
MongoDB相关内容讨论区
社区管理员
  • MongoDB社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧