1. 创建管理员用户
db.createUser({
user: "admin",
pwd: "123456",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
})
这条命令在admin数据库中创建了一个名为admin,密码为123456的用户,并赋予userAdminAnyDatabase角色,使其成为管理员用户。
2. 启用验证
db.adminCommand({
setParameter: 1,
authenticationMechanisms: "MONGODB-CR",
enableLocalhostAuthBypass: false
})
这条命令启用了MONGODB-CR验证机制,并禁用了localhost身份验证绕过,使其需要进行身份验证。
3. 创建只读用户
db.createUser({
user: "readonly",
pwd: "123456",
roles: [ { role: "read", db: "Report" } ]
})
这条命令在Report数据库中创建了一个只读用户readonly,密码为123456。
4. 启用访问控制
use Report
db.createRole({
role: "readOnly",
privileges: [
{ resource: { db: "Report", collection: "" }, actions: [ "find" ] }
],
roles: []
})
这条命令创建了一个只读角色readOnly,并授予在Report数据库中进行查询的权限。
5. 为用户分配角色
db.grantRolesToUser("readonly", [{ role: "readOnly", db: "Report" }])
这条命令将readOnly角色分配给readonly用户,使其只能查询Report数据库。
6. 查看用户权限
show users
show roles
db.getUser("readonly")
这几条命令可以查看创建的用户、角色列表和某个用户的详细权限信息。
以上6个命令可以完成MongoDB主要的安全设置,包括创建管理员用户与只读用户,启用验证与访问控制,创建只读角色并赋予用户,以及查看用户与权限相关信息。
使用这些命令可以最大限度地保障MongoDB数据库的安全性。
© 版权声明
本文刊载的所有内容,包括文字、图片、音频、视频、软件、程序、以及网页版式设计等部门来源于互联网,版权均归原作者所有!本网站提供的内容服务于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。
联系信息:邮箱aoxolcom@163.com或见网站底部。
联系信息:邮箱aoxolcom@163.com或见网站底部。
THE END

















请登录后发表评论
注册
社交帐号登录