开启mongodb数据库命令行_MongoDB身份验证

e831b32503e11cd41cda6560d4ad1617.png

8450b7ac2cd88b95d0b98830d92fe05c.png

MongoDB Manual (Version 4.2)> Security > Authentication

本次我们从以下几方面了解MongoDB身份验证。

  • 身份验证方法

  • 身份验证机制

  • 内部身份验证

  • 分片集群中的身份验证

身份验证是验证客户端身份的过程。当访问控制(即授权)开启的时候,MongoDB要求所有客户端进行身份认证,以确定他们的访问权限。

尽管身份认证(authentication)和授权(authorization)紧密相连,但是身份认证和授权是不同的。身份认证是验证用户的身份,授权决定已通过验证的用户对资源和操作的访问权限。

身份验证的方法

作为一个用户要进行身份验证,你必须提供一个用户名、密码和关联这个用户的认证数据库。

使用mongo shell 进行身份验证,可以:

  • 当连接mongod或者mongos实例时,使用mongo命令行认证选项(--username、--password和--authenticationDatabase),也可以

  • 先连接mongod或者mongos实例,然后在认证数据库上运行authenticate命令或者db.auth()方法。

重要:

当使用不同的用户进行多次身份验证时,不会删除已经通过身份认证的用户的凭证。这可能导致这个进行过多个用户身份认证的连接具有比用户预期更多的权限,并导致在一个逻辑会话中的操作引发错误。

关于使用MongoDB驱动程序进行身份验证的示例,请参阅 驱动程序文档。

身份验证机制

MongoDB支持许多身份认证机制,客户端可以使用这些身份认证机制来验证自己的身份。MongoDB允许集成这些机制到已经存在的身份认证系统。

MongoDB支持多种身份验证机制:

  • SCRAM(默认的)

  • x.509证书身份验证

内部身份验证

除了验证客户端的身份之外,MongoDB能要求副本集和分片集群的成员对其各自的副本集或者分片集群的成员资格进行身份验证。更多的信息请参阅:内部/成员身份认证。

分片集群的身份验证

在分片集群中,客户端通常直接向mongos实例进行身份认证。然而,一些维护操作可能要求对特定的分片进行认证。更多关于身份认证和分片集群的信息,请参阅分片集群用户。

原文链接:

https://docs.mongodb.com/manual/core/authentication/

译者:傅立

测试开发兼运维工程师,负责产品测试、自动化开发及运维工作。

使用mongo两年有余,喜欢钻研技术细节、关注新技术。爱好运动、阅读和旅行。

往期翻译:

The mongo Shell

mongo 命令行

MongoDB CRUD操作

批量写操作

读关注

事务

事务

事务操作

索引

2dsphere索引

哈希索引

索引属性

在集合上创建索引

量索引使用情况

安全

安全检查列表

启用访问控制

审计

—— 配置审计

—— 配置审计过滤器

—— 系统事件审计消息

网络和配置强化

复制

副本集成员

副本集Oplog

副本集数据同步

副本集部署架构

分片

分片键

管理

产品说明

操作检查表

性能

存储

—— WiredTiger存储引擎

763d346e995cb078f8744e4c22f45502.png

喜欢我们,

分享、点赞、在看三连哦~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值