数据库安全问题:推理(6)
2008-02-23 07:43:38来源:互联网 阅读 ()
上面的操作过程都正确贯彻了安全规则,禁止没有相应安全权限的人看到比他不应该看到的分类数据。然而,假设对于航班号和货舱的排列有一个不能重复输入信息的限制条件,这样能够避免把两次出货任务安排到同一个货舱。当小兵张三看到看到1254航班的C货舱没有安排任何货物时,他很可能试图为该航班插入一条运输蔬菜的新记录。但是,当他试图插入这条记录时,当唯一对应的限制条件起作用时,他的插入操作就会失败。这时,这个小兵张三完万能够根据上面这些数据来推理出1254航班上将要运送一批机密货物。然后,他可能会交叉引用航班信息表,找到这次秘密运输任务的发货地、目的地和其他更多信息。
这自然引出了一个问题:您要怎么做才能防止这种推理问题的发生?基本上,您有两个选择。第一,您能够把安全列纳入到唯一性的约束条件中。这种技术,我们称之为多实例(polyinstantiation),使同一张表格中的不同记录处于不同的安全级别上。这样小兵张三就永远不会知道最高机密运输任务的任何信息了。第二,您能够处理对货舱的双预约请求,把小兵张三要运的一卡车蔬菜就搁置在机场。第二个选择只是简单的保持表格的原样。小兵张三可能知道有一个安全分类的运输任务要执行,但不会有机会获取运输内容的任何信息。无论哪一个解决方案都很理想,但都需要对安全和实用之间的平衡做出某种意义上的取舍。
IT专家网原创文章,未经许可,严禁转载!
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇: 运行多个MYSQL服务器
下一篇: 数据库设计中的14个技巧
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash
