设为首页 收藏本站
查看: 851|回复: 0

[经验分享] 保护SQL语句不被Sql Profiler / 事件探查器 捕获跟踪到

[复制链接]

尚未签到

发表于 2016-11-11 10:20:07 | 显示全部楼层 |阅读模式
DSC0000.jpg

  Sql Server数据库的一大优势,就是具有富UI的管理和调试工具,这点,绝对是优于ORACLE和其他的大中型数据库的。
  Sql Server的众多工具中,对于开发人员和DBA来讲,非常重要的一个,就是Sql Profiler (事件探查器) 了。
  Sql Server中执行的每个一个动作,都可以在Sql Profiler里看的一清二楚,这对于性能调优,后期维护等等是非常有帮助的。
DSC0001.jpg

  但是,问题来了,在你的产品发布后,你可能不想让客户跟踪到你的SQL执行情况,便于对客户保密。那么这个优势,就成了你的“眼中钉” DSC0002.jpg
  如何才能不被Sql Profiler跟踪到呢?
  下面,我们就来探讨这个问题
  
假设,你有一张表A,里面有个字段password,保存密码,你执行下面的SQL:   

SELECT [password] FROM [A]     

在Sql Profiler 事件探查器里,你会看到如下的内容:
  
DSC0003.jpg

  — 在该事件文本中找到“password”。   
— 出于安全原因,已用该注释替换此文本。
    这样,就看不到你执行的SQL语句的内容了。 DSC0004.jpg
  但是,你可能要疑惑了,我的表中,不可能都存在password字段啊
  确实如此,但是微软做的更绝,只要在查询的过程中,任意地方出现关键词password,encryption,sp_setapprole之一,整个查询过程都将被隐藏,任意地方,当然也包括 注释 中。
  例如,执行下面的过程语句:

  同样,在Sql Profiler中,可以看到如下的提示:

  这样,事情就很清楚了,只要在所执行的想保护的SQL语句中,添加一个含有关键词的注释,就可以被保护起来了!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-298814-1-1.html 上篇帖子: SQL之WITH语句进阶 下篇帖子: Transact-SQL管理与开发实例精粹
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表