帝国软件
  设为首页 加入收藏 关于我们
 
解密帝国网站管理系统
栏 目:
 
您的位置:首页 > 技术文档 > ASP编程
在ASP.NET中创建安全的web站点
作者:佚名 发布时间:2005-04-02 来源:不详
   首先,介绍一下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" 页来查看   应用程序跟踪日志。   -->   <trace enabled="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>   但是这样会产生一个问题,那就是如果我的站点有一些信息是可以让任意用户随意访问的,比如站点简介,使用说明等。如果按照上面的处理方法岂不让用户觉得很麻烦,呵呵,不急,在ASP.NET中自然有相应的解决办法。下面的代码可以实现匿名用户访问Test.aspx页面:   <location path="test.aspx">   <system.web>   <authorization>   <allow users="?" />   </authorization>   </system.web>   </location>    
  
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·在ASP中操作数据库的方法  (2005-04-02)
 ·关于ASPNET在IIS中的经验总结  (2005-04-02)
 ·在ASP中使用脚本语言  (2005-04-02)
 ·在ASP中限制同一表单被多次提交  (2005-04-02)
 ·在ASP.NET中发送Email完整实例  (2005-04-02)
 ·在asp中结合对象和组件  (2005-04-02)
 ·在ASP.NET数据集中浏览多个相关表  (2005-04-02)
 ·在ASP.NET中进行文件处理  (2005-04-02)
 ·如何在ASP中调用DLL  (2005-04-02)
 ·在ASP.NET中使用Microsoft Word文  (2005-04-02)

   栏目导行
  PHP编程
  ASP编程
  ASP.NET编程
  JAVA编程
   站点最新
·致合作伙伴的欢迎信
·媒体报道
·帝国软件合作伙伴计划协议
·DiscuzX2.5会员整合通行证发布
·帝国CMS 7.0版本功能建议收集
·帝国网站管理系统2012年授权购买说
·PHPWind8.7会员整合通行证发布
·[官方插件]帝国CMS-访问统计插件
·[官方插件]帝国CMS-sitemap插件
·[官方插件]帝国CMS内容页评论AJAX分
   类别最新
·在ASP中使用数据库
·使用ASP脚本技术
·通过启动脚本来感受ASP的力量
·学习使用ASP对象和组件
·解析asp的脚本语言
·初看ASP-针对初学者
·ASP开发10条经验总结
·ASP之对象总结
·ASP与数据库应用(给初学者)
·关于学习ASP和编程的28个观点
 
关于帝国 | 广告服务 | 联系我们 | 程序开发 | 网站地图 | 留言板 帝国网站管理系统