- 分布式DBMS教程
- DDBMS - 首页
- DDBMS - DBMS概念
- DDBMS - 分布式数据库
- 分布式数据库设计
- 分布式数据库环境
- DDBMS - 设计策略
- DDBMS - 分布式透明性
- DDBMS - 数据库控制
- 分布式DBMS安全
- 数据库安全与密码学
- 分布式数据库中的安全
- 分布式DBMS资源
- DDBMS - 快速指南
- DDBMS - 有用资源
- DDBMS - 讨论
DDBMS - 分布式数据库中的安全
分布式系统比集中式系统需要额外的安全措施,因为它拥有许多用户、多样化的数据、多个站点和分布式控制。本章将探讨分布式数据库安全的各个方面。
在分布式通信系统中,存在两种类型的入侵者:
被动窃听者 - 他们监控消息并获取私人信息。
主动攻击者 - 他们不仅监控消息,还通过插入新数据或修改现有数据来破坏数据。
安全措施包括通信安全、数据安全和数据审计。
通信安全
在分布式数据库中,由于数据、用户和事务位置的多样化,大量数据通信发生。因此,它需要用户和数据库之间以及不同数据库环境之间的安全通信。
通信安全包括以下内容:
数据在传输过程中不应损坏。
通信通道应防止被动窃听者和主动攻击者。
为了实现上述要求,应采用定义明确的安全算法和协议。
两种流行且一致的技术可以实现端到端的安全通信:
- 安全套接字层协议或传输层安全协议。
- 虚拟专用网络 (VPN)。
数据安全
在分布式系统中,除了通信之外,必须采取措施来保护数据安全。数据安全措施包括:
身份验证和授权 - 这些是采用的访问控制措施,以确保只有经过身份验证的用户才能使用数据库。为了提供身份验证,使用数字证书。此外,通过用户名/密码组合来限制登录。
数据加密 - 分布式系统中数据加密的两种方法是:
分布式数据库内部方法:用户应用程序加密数据,然后将加密数据存储在数据库中。为了使用存储的数据,应用程序从数据库中获取加密数据,然后对其进行解密。
分布式数据库外部方法:分布式数据库系统具有其自身的加密功能。用户应用程序存储数据并检索数据,而无需意识到数据以加密形式存储在数据库中。
验证输入 - 在此安全措施中,用户应用程序会在每个输入用于更新数据库之前对其进行检查。未经验证的输入可能导致各种漏洞,例如缓冲区溢出、命令注入、跨站点脚本和数据损坏。
数据审计
数据库安全系统需要检测和监控安全违规,以便确定其应采取的安全措施。在发生安全违规时,往往很难检测到。一种识别安全违规的方法是检查审计日志。审计日志包含以下信息:
- 失败的访问尝试的日期、时间和站点。
- 成功访问尝试的详细信息。
- 数据库系统中的重要修改。
- 访问大量数据,特别是来自多个站点中的数据库。
所有上述信息都提供了数据库活动的信息。定期分析日志有助于识别任何异常活动及其发生的时间和地点。此日志理想情况下存储在单独的服务器中,以便攻击者无法访问它。