经验分享:给开发人员的有关于数据库的建议——确保其安全性

防止SQL注入–确保使用ORM或准备好的语句,而不要使用字符串连接来构建查询。

否则,恶意行为者可以在您的查询中注入任何内容,然后将其转换为DROP DATABASE查询,或更糟糕的是,该查询会渗漏所有数据。

支持传输中的加密–应用程序的驱动程序配置通常必须支持此加密,例如,通过信任特定的服务器证书。

即使在同一数据中心内,未加密的通信也是一个重大风险,这就是为什么数据库在传输过程中支持加密的原因。(您还应该考虑静态加密,但这更多是Ops任务)

 

在应用程序级别具有审核日志–从安全性和合规性的角度来看,“谁做了什么”是一个非常重要的问题。

而且,没有任何本机数据库功能可以始终如一地回答“谁”问题-由应用程序管理用户。因此,构建一个审计跟踪层,记录谁对哪些实体/表进行了哪些更改。

如果你在学习C/C++的过程中遇到了问题,可以来加入小编的企鹅圈问小编哦~小编很热情的(●’◡’●)

考虑对敏感数据进行记录级加密–具有访问权限(或恶意获得访问权限)的人员可以完全转储数据库。这就是数据泄露的发生方式。

 

敏感数据(例如健康数据,支付数据,甚至API密钥,机密或令牌)可以通过使用应用程序管理的密钥进行加密来受益,因此仅访问数据库就不会泄露该数据。

通常用于信用卡的另一种选择是令牌化,它将加密责任转移给令牌化提供者。管理密钥很困难,但是即使是基本方法也总比没有好。

安全通常被视为“操作”责任,这导致许多工具可以尝试解决上述问题而不接触应用程序-Web应用程序防火墙,用于数据库访问监视的启发式方法,尝试提取当前用户等但是,应用程序是其中许多保护措施的正确选择(尽管当然不是唯一的选择),并且作为开发人员,我们需要意识到风险和最佳实践。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值