文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>web开发的一些基本原则

web开发的一些基本原则

时间:2010-09-10  来源:喝高了点

一、最小权限原则

  只允许用户做***操作,而不是不允许用户做***操作。

  用户看到的是服务器端执行输出的结果,用户不可能看到aspx、aspx.cs源文件,目标另存为也是保存的服务器端执行后的结果。js、html是被输出到浏览器上的,用户有办法看到。

二、C#代码运行在服务器端,js代码运行在客户端。

  可以在空间的OnClientClick中编写客户端代码(js):return confirm(‘真的要删除吗?’)

  服务器端编写context.Response.Write("<srcipt ty[pe='text/javascript> alert(' 删除成功')</script>'");

会看到页面加载时弹出消息框,查看源文件可以看到上面的代码在html源文件的最上端,即浏览器先解析上面的js程序,在继续向下解析。

不能用这种方法来询问客户是否继续操作,因为这种方法阻塞的是客户端的解析和运行,不会对服务器端产生影响。

  服务器端添加Windows.Forms的引用,然后调用MessageBox。show();方法企图显示消息框式错误的,因为这个程序会运行在服务器端,而不是客户端,用户出发时消息框在服务器端弹出。

三、能在浏览器做的事就不要再服务器端做。如做一个加法运算,隐藏一个控件等。

四、客户端是不可信的

  客户端验证不能代替服务器端验证。客户端验证时为了方便用户使用,服务器端验证时为了确保数据合法。有些人可以越过浏览器直接和服务器通信,或禁用js等,如果省略服务器端的验证会不安全。

   不要把机密的数据算法等放到客户端。如输入密码后才可下载功能。如果仅是在html中把下载地址隐藏了,那用户一定可以看到。这样是不安全的,可以用Hyperlinker控件。让他的visible属性为false,只有用户输入正确密码后把visible为TRUE,为FALSE是在客户端html中式看不到这个控件的,只有提交返回后才把这个控件渲染回来。

  应该是在机密页面打开之前做权限校验,而不是在一个页面中做校验,如果正确就倒向机密页面,不正确就不导向。
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载