• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

创建安全web站点-ASP.NET篇

发布: 2008-4-08 10:21 | 作者: 不详 | 来源: dev.chinaitzhe.com | 查看: 22次 | 进入软件测试论坛讨论

领测软件测试网 以前用ASP,PHP,JSP编写网站代码的时候,站点安全性总是一件头疼的事情,虽然我们编写了用户登录,注册,验证页面,但是效果总是不理想。有时候我们不得不用大量的session变量来存放相关信息,处处设防。而在.NET环境下,这个问题处理起来就非常容易了。关键是要充分理解web.config文件。首先,介绍一下web.config文件。 
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
    <system.web>
    <!-- 动态调试编译设置 compilation debug="true" 以将调试符号(.pdb 信息)插入到编译页中。因为这将创建执行起来、较慢的大文件,所以应该只在调试时将该值设置为 true,而所有其他时候都设置为false。有关更多信息,请参考有关 调试 ASP.NET 文件的文档。
    -->
    <compilation defaultLanguage="vb" debug="true" />
    <!-- 自定义错误信息设置 customErrors mode="On" 或 "RemoteOnly" 以启用自定义错误信息,或设置为 "Off" 以禁用自定义错误信息。为每个要处理的错误添加 <error> 标记。
    -->
    <customErrors mode="RemoteOnly" />
    <!-- 身份验证 
    此节设置应用程序的身份验证策略。可能的模式是\“Windows\”、\“Forms\”、\“Passport\”和 \“None\”
    -->
    <authentication mode="Windows" /> 
    <!-- 授权此节设置应用程序的授权策略。可以允许或拒绝用户或角色访问应用程序资源。通配符:"*" 表示任何人,"?" 表示匿名(未授权的)用户。
    -->
    <authorization>
    <allow users="*" /> <!-- 允许所有用户 -->
    <!-- <allow users="[逗号分隔的用户列表]"
    roles="[逗号分隔的角色列表]"/>
    <deny users="[逗号分隔的用户列表]"
    roles="[逗号分隔的角色列表]"/>
    -->
    </authorization>
    <!-- 应用程序级别跟踪记录应用程序级别跟踪在应用程序内为每一页启用跟踪日志输出。设置 trace enabled="true" 以启用应用程序跟踪记录。如果 pageOutput="true",则跟踪信息将显示在每一页的底部。否则,可以通过从 Web 应用程序根浏览 "trace.axd" 页来查看应用程序跟踪日志。
    -->
    <traceenabled="false"requestLimit="10"pageOutput="false"traceMode="SortByTime" localOnly="true" />
    <!-- 会话状态设置
    默认情况下,ASP.NET 使用 cookie 标识哪些请求属于特定的会话。 如果 cookie 不可用,则可以通过将会话标识符添加到 URL 来跟踪会话。 若要禁用 cookie,请设置 sessionState cookieless="true"。
    -->
    <sessionState 
    mode="InProc"
    stateConnectionString="tcpip=127.0.0.1:42424"
    sqlConnectionString="data source=127.0.0.1;user id=sa;password="
    cookieless="false" 
    timeout="20" 
    />
    <!-- 全球化
    此节设置应用程序的全球化设置。
    -->
    <globalization requestEncoding="utf-8" responseEncoding="utf-8" />
    </system.web>
    </configuration>

  好了,相信看过上面的介绍以后,对web.config文件一定非常了解了吧。下面我们就切入主题。为了防止用户没有经过验证就访问站点,我们的处理方法是当用户没有通过验证的时候点击任何页面将会直接跳到Login.aspx页面,具体代码如下:

    <authentication mode="Forms">
    <forms name="yourAuthCookie" loginUrl="login.aspx" protection="All" path="/" />
    </authentication>
    <authorization>
    <deny users="?" />
    </authorization>

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

21/212>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网