客户端安全1--禁止快捷键

对于网页安全,在客户端一般的做法就是禁止用户右键,禁止页面复制,禁止控制台,禁止保存页面,虽说前端做数据安全作用有限,但是至少可以提高不法之徒的门槛。因为mac的快捷键和win不一样,所以分开来写。

$(window).on('keydown',function(e){
    if (/macintosh|mac os x/i.test(navigator.userAgent)) {//是否为mac
        if((e.metaKey&& e.keyCode==83) || //禁止保存网页
        ((e.altKey) && (e.keyCode ==85) && (e.metaKey)) ||  //禁止ctrl+U
        ((e.altKey) && (e.keyCode ==73) && (e.metaKey)))  { //控制台
            alert('为保证数据安全,该操作已被禁止!');
            e.stopPropagation();
            e.preventDefault();
            return false;
      }
  } else {  //window系统
        if (e.keyCode===123 || ((e.ctrlKey)  &&  (e.shiftKey) && (e.keyCode ==73)) || //禁止调取控制台
        ((e.ctrlKey) && (e.keyCode ==85)) || //禁止ctrl+U
        ((event.ctrlKey) && (event.keyCode ==83))) {  //禁止保存网页
          alert('为保证数据安全,该操作已被禁止!');
          e.stopPropagation();
          e.preventDefault();
          return false;
    }
}
}).on('contextmenu',function(){
        window.event.returnvalue = false;
        return false;
    }).on('selectstart',function(){//禁止用户选中文本复制
        return false;
    });

当然这个还是有些兼容性的问题,比如低版本的ie禁止不了控制台等,我的做法是禁止用户使用低版本的浏览器访问,引导用户使用高版本的浏览器。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,218评论 19 139
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,854评论 1 92
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,236评论 25 709
  • 一、概念(载录于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434阅读 8,542评论 6 152
  • 基本sql数据库链接 一、 下载sqljdbc.jar,根据不同版本sqlserver下载不同sqljdbc.ja...
    枳南橘阅读 287评论 0 2