linux - 提供 root 访问权限,但不提供 DB 访问权限

标签 linux service passwords password-protection isolation-level

尝试为我们团队中的更多操作人员提供服务器生产访问权限。 唯一的问题是数据库访问问题。对于大多数任务,运算符(operator)不需要数据库访问权限,只有有限的人应该拥有此类访问权限。

假设我们有两台服务器:

应用服务器: tomcat(应用程序需要访问数据库服务器)

数据库服务器: 数据库

因此,最终我们希望授予“应用程序服务器”的 root 访问权限,以便运算符(operator)可以在服务器上进行各种维护,但无法访问数据库服务器。这意味着我不能只将数据库传递存储在配置文件中以供应用程序读取。

是否有众所周知的做法可以解决此类问题?

最佳答案

首先,“应用程序服务器”必须访问“数据库服务器”的任何凭据都应考虑移交给具有应用程序服务器根权限的任何人。既然您说必须限制数据库访问,那么您就不能在应用程序服务器上为操作人员提供完整的 root 权限。

但不要失去希望,还有 sudo

sudo 可以授予用户或组访问 root 权限的权限,但仅限于有限的目的。不幸的是,正确设置 sudo 可能很难防止子 shell 和通配符获得完全 root,但这是可能的。

除了 sudo 之外,如果没有有关您的用例的其他信息,一般答案的排列有太多。 Michael W. Lucas 的“Sudo Mastery”是 sudo 的一个很好的引用,正是考虑到了这个用例。

关于linux - 提供 root 访问权限,但不提供 DB 访问权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31292920/

相关文章:

windows - 如何在不使用任何可移动磁盘的情况下将文件从主机操作系统传输到虚拟机中运行的操作系统?

linux - 在 gnuplot 中处理非均匀抽动

javascript - Angular 2 : Promise return

PHP 密码验证总是返回 false

ruby-on-rails - ruby rails : Devise - password change on first login

linux - QNX 7 中的 PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP 错误

linux - Perl one-liner 是否可以为给定的每个文件 arg 执行 END block

java - Service 和 DAO 之间的关系应该是一对一还是一对多?

javascript - 定义创建新服务对象的 promise

具有文本密码输入类型的Android EditText不会通过双击选择所有字符