Docker 安装 MongoDB开启认证,创建只读用户权限。

这篇具有很好参考价值的文章主要介绍了Docker 安装 MongoDB开启认证,创建只读用户权限。。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

创建带认证的mongdb容器

docker run -itd --name mongo -p 27017:27017 mongo --auth

--auth 就是开启mongodb权限认证。如果不加 --auth 则是无权限认证,连接成功后任何用户都可以对数据库进行读写操作。

进入容器并创建用户

docker run -itd  --name mongo -p 27017:27017 mongo --auth
 
docker exec -it mongo mongo admin
 
db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
 
db.auth('admin','123456')
 
use ylgroup
 
db.createUser({ user:'root',pwd:'123456',roles:[ { role:'readWrite', db: 'ylgroup'}]});
 
db.auth('root','123456')
 
db.test.save({name:"zhangsan"});

这样就是需要用户认证来区分用户权限。

忘记开启开启权限认证怎么处理

我这里启动了一个没有开启权限的mongo容器。

Docker 安装 MongoDB开启认证,创建只读用户权限。,docker,mongodb

之前安装MongoDB忘记开启权限了,我在官方文档里找到了两种办法:

Docker 安装 MongoDB开启认证,创建只读用户权限。,docker,mongodb

1.--auth 不多赘诉,启动时携带它既开启认证。

2.security.authorization 配置文件中我并没有在docker mongo容器中找到完全锲合的下面文档提及的配置文件

Docker 安装 MongoDB开启认证,创建只读用户权限。,docker,mongodb

我找到一个类似的配置文件——mongod.conf.orig,并且添加了如下配置,

Docker 安装 MongoDB开启认证,创建只读用户权限。,docker,mongodb

重启容器后创建用户看看会不会生效。

Docker 安装 MongoDB开启认证,创建只读用户权限。,docker,mongodb

 从上图可以看到没有启动时(--auth)开启认证,mongo容器中修改配置是没法生效的,也可能是我没有改对,但是我查了很久都没有类似的文章,如果您有好的解决办法,望告知。

于是只能最原始的办法,那就是先把容器内数据库等相关文件映射到外部,删除容器,重新创建一个开启认证的mongo并把刚刚挂载到外部的目录再放置到容器内部。

对已经启动的容器添加目录映射

window 下查看容器保存位置:

在PowerShell终端中依次输入

cd \\wsl$\docker-desktop-data\version-pack-data\community\docker\containers
explorer.exe .    #唤起 Windows 资源管理器,注意后面的.号
 

linux 下查看容器保存位置:docker inspect container_name | grep Mounts -A 20

 找到容器目录,linux请看:Docker学习笔记四:Docker给已经启动的容器添加目录映射、端口映射 - 零下一度的微笑 - 博客园 (cnblogs.com)

docker对已经启动的容器添加目录映射(挂载目录)_docker 目录映射_alwaysonline819的博客-CSDN博客

window请看:windows10下docker:给已存在的容器添加端口映射、目录映射的方法_windows docker 映射目录_贺群的博客-CSDN博客

我尝试了这俩种办法,可能是我没有修改对,容器至此无法再启动了。

对于忘记开启开启权限认证怎么处理,后续怎么处理,大家有什么好的办法,望告知文章来源地址https://www.toymoban.com/news/detail-583280.html

到了这里,关于Docker 安装 MongoDB开启认证,创建只读用户权限。的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ES开启用户登录认证

    ES开启用户登录认证 1.修改elasticsearch.yml 配置文件 添加如下配置 注意xpack.security.transport.ssl.keystore.path和xpack.security.transport.ssl.truststore.path要改成绝对路径。 2.生成证书; 证书会生成在config目录下,证书文件名为 elastic-certificates.p12 然后配置elastic-certificates.p12的文件权限 3、重

    2024年02月12日
    浏览(43)
  • 通过docker安装es,并且设置安全权限(用户名和密码)

    1、首先拉去es 2、配置elasticsearch.yml(挂载到容器外) cluster.name: \\\"docker-cluster\\\" network.host: 0.0.0.0 xpack.security.enabled: true  xpack.security.transport.ssl.enabled: true 3、进入容器内 docker exec -it elasticsearch /bin/bash 4、cd /bin 5、可以进行设置密码(下面几步都要输入密码) 6、重新启动docker 7、

    2024年04月13日
    浏览(47)
  • Nacos2.2.0-开启鉴权配置、权限认证

    1、application.properties文件 修改之前 修改之后 2、增加项目中nacos注册服务的验证信息 增加用户及密码:

    2024年02月13日
    浏览(44)
  • 通过docker安装es,并且设置安全权限(用户名和密码)_docker es 设置用户名和密码

    cluster.name: “docker-cluster” network.host: 0.0.0.0 xpack.security.enabled: true  xpack.security.transport.ssl.enabled: true 3、进入容器内 docker exec -it elasticsearch /bin/bash 4、cd /bin 5、可以进行设置密码(下面几步都要输入密码) 6、重新启动docker 7、浏览器访问es 自我介绍一下,小编13年上海交大毕业

    2024年04月22日
    浏览(55)
  • flask框架-认证权限(一):使用g对象存登录用户信息,认证权限一起实现

    apps         -user         __init__.py authen        __init__.py         token.py ext         __init__.py util.py        public.py         __init__.py app.py 依赖包 authen/token.py user/views.py 认证大致的逻辑: 1、用户登录时,生成token,前端保存token信息 2、前端发起请求时,将token携带在cook

    2024年02月09日
    浏览(44)
  • docker部署ldap(从docker安装到ldap创建用户)

    服务器信息(linux发行版是redhat): 1.1.需要的安装包 [root@haha redhat]# yum install -y yum-utils 1.2.设置阿里镜像仓库 1.3安装docker [root@haha redhat]#yum install -y docker-ce docker-ce-cli containerd.io 1.4启动docker [root@haha redhat]#systemctl start docker [root@xixi ~]# docker pull osixia/openldap [root@xixi ~]# docker pull osi

    2023年04月12日
    浏览(44)
  • Docker 安装oracle12c容器并创建新用户

    下载镜像 启动镜像 8080和22端口没有映射出来,有需要自己 正常日志 启动报错日志 原因 容器没有操作主机文件夹权限 主机内执行 进入容器内并以dba登录Oracle 创建表空间及用户和赋权

    2024年02月08日
    浏览(42)
  • MongoDB之用户与权限管理、备份与恢复管理以及客户端工具的使用

    MongoDB默认不使用权限认证方式启动,但是需要设置权限以保证数据安全。 MongoDB是没有默认管理员账号,所以要先添加管理员账号,并且MongoDB服务器需要在运行的时候开启验证模式 语法格式: 创建root用户,角色为root 在使用的数据库上创建普通用户 若需要连接Mongodb进行认

    2024年02月07日
    浏览(47)
  • 开启AWS的ubuntu服务器的root用户登录权限

    输入以下命令修改root用户密码 输入以下命令切换到root用户 输入以下命令编辑ssh配置文件 新增以下配置允许root用户登录 把PasswordAuthentication修改为yes,允许用密码登录 保存退出后输入以下命令重启SSH服务 输入以下命令编辑ssh配置文件 新增以下配置允许root用户登录 如果之前

    2024年02月05日
    浏览(66)
  • Django 不到20行代码实现用户认证及权限管理完整功能

    几乎所有软件项目都不得不实现的1个功能需求就是: 用户认证与权限管理 。其基本要求包括: 提供用户登入,登出,密码更改,密码重置等页面。 对页面操作、数据访问的权限控制,包括增删改查。 权限控制基于用户、组、基于页面、基于表。 说起来容易,实现起来却非

    2023年04月27日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包