应该给开发生产环境数据库的写权限吗?

2019-03-29 17:51:15 +08:00
 gzslw

我是运维,最近上了个 sql 审核工具,可以审核 dml 和 ddl 语句,同时我们想逐步收回开发手中带有写权限的数据库账号,但是这些数据库的账号就算再怎么收回,也会在程序的配置文件中呈现,所以我就有点困惑了,各位大神是怎么解决这些权限问题的呢

2557 次点击
所在节点    问与答
8 条回复
sortbylist
2019-03-29 18:39:00 +08:00
上堡垒机
iamaprin
2019-03-29 18:42:33 +08:00
开发环境和生产环境分离,开发没有生产任何权限,配置文件使用开发环境数据库配置,互不影响。
9hills
2019-03-29 18:49:01 +08:00
其实很简单
1. MySQL 帐号可以配允许使用的主机,你只允许生产环境访问即可
2. 在生产环境增加审计,如果 RD 在生产环境连了数据库,发现就开除,公布出来就行了


技术解决不了的,就通过管理手段解决
THaGKI9
2019-03-29 19:44:15 +08:00
数据库连接配置可以通过一些配置中心获取,数据库可以只允许线上环境的机器连接
gzslw
2019-03-29 20:41:45 +08:00
@sortbylist 堡垒机是针对服务器权限这块的吗?目前已经在考虑 jumpserver 了,从这点来看的话我们公司的审计这块约等于啥也没做。。。
sortbylist
2019-03-29 20:48:46 +08:00
@gzslw #5 堡垒机是为了审计,里面的操作都会留下日志,也算是权限了。
数据库的账号
1. 区分只读账号 /写权限账号
2. 写权限指定机器连接,比如堡垒机
3. 不同应用使用不同账号连接
4. 如果完全禁止开发使用写权限账号,不给堡垒机权限就行了,知道密码也没用。通过 sql 审核工具就好了。
总之核心思想就是写操作都要留下日志,方便追查。
到于写操作之前是否审核,就看你们人力是否够,不然 sql 审核估计也是够呛,而且也未必有必要。
gzslw
2019-03-29 21:00:59 +08:00
@9hills 谢谢!之前对这块确实做的有欠缺,还好现在弥补还来得及
gzslw
2019-03-29 21:05:49 +08:00
@sortbylist 谢谢!主要是我们没有专门的 dba,加上我们运维也都是野路子,所以 sql 都是开发自己写。。。搞这个 sql 审计工具,也是为了让他们别捅出大漏子来。。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/550035

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX