微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有没有办法阻止用户在Postgresql数据库中执行批量条目

我有4个新的数据输入用户使用特定的GUI来创建/更新/删除数据库中的条目. “GUI”客户端允许他们在地图上查看数据库记录并在那里进行修改,这是很好的首选方式.

但是最近很多人一直在使用PGAdmin直接访问本地数据库并运行批量查询(即更新,插入,删除等),这会引入很多问题,例如人们在设置值时不知道或犯错误更新大量记录.它还会影响我们的记录程序,因为我们正在计算报告目的的平均值和时间戳,这对我们来说非常重要.

那么有没有办法阻止用户使用PGAdmin(请记住很多这些人在家工作,我们无法访问他们的机器)并直接在数据库中运行SQL查询.

我们仍然必须让他们访问某些表,并允许他们执行sql,只要它来自某个客户端,但在他/她尝试直接在db中执行查询时拒绝访问同一用户.

解决方法

控制数据库访问的唯一合理方法是将db访问方法转换为3层结构.您应该构建一个中间件(可能是一些其他API或类似的东西)并从您的应用程序中使用此API.数据库应隐藏在此中间件后面,因此无法直接访问.从数据库的角度来看,没有办法判断一个数据库连接是来自您的应用程序,还是来自其他一些工具(pgadmin,简单的psql或某些自定义构建客户端).您的数据库只能从可信主机访问,客户端不应该有权访问这些主机.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐