首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 防止用户绕过地址栏进入网站 [已结帖,结帖人:kerry030401]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • kerry030401
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 结帖率:
    发表于:2008-08-21 11:20:08 楼主
    我现在做好了一个系统了,但是安全方面不行,别人可以通过直接在浏览器上输入地址进入系统,这样的话前面首页登录框就白做了,有什么好的方法可以帮我解决这个问题?谢谢!
    30  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • xbfitliu
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:21:441楼 得分:0
    用什么开发的。如果是.net 1.1 以上版本,你可以配置web.config文件来设置那么页面可以匿名访问,那些不可以。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • time_is_life
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:24:192楼 得分:0
    Forms验证,这么基本的东西。
    看看www.codehenry.com,
    怎么绕也饶不过去
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wangfuchong
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:25:133楼 得分:0
    晕,这是什么问题呀?
    验证是干什么的?再说验证也有好多方法
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lovehongyun
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:26:134楼 得分:0
    看一下asp.net forms验证.(推荐)
    http://msdn.microsoft.com/zh-cn/library/7t6b43z4(VS.80).aspx

    或是你可以用session验证(不推荐)
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • kerry030401
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:27:295楼 得分:0
    引用 1 楼 xbfitliu 的回复:
    用什么开发的。如果是.net 1.1 以上版本,你可以配置web.config文件来设置那么页面可以匿名访问,那些不可以。

    麻烦这位兄弟可以具体说下嘛?我是VS 2005开发的 用的.NET FRAMEWORK 2.0  谢谢
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • xft_1981
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:35:106楼 得分:0
    这个问题是大多数程序员都容易碰到的问题,特别是在用户后台的页面验证上,如果我们知道了URL就可以直接绕过登录而进入的话,那我们的登录就白做了,我推荐一个最好的方法:
    C# code
    public class BasePage : System.Web.UI.Page//注意这里 { //重载页面方法 protected override void OnLoad(EventArgs e) { //如果没登录,转到登录,Session不为空,则正常加载页面. if (Session["UserName"] == null) { Response.Redirect("~/Admin/Login.aspx"); } else { base.OnLoad(e); } } } 然后把需要验证的页面的,都遵循basepage接口.例如要验证Default.aspx 那么要把Default.aspx.cs的public partial class Default : BasePage//改为BasePage
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • walkghost
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:35:537楼 得分:30
    引用 5 楼 kerry030401 的回复:
    引用 1 楼 xbfitliu 的回复:
    用什么开发的。如果是.net 1.1 以上版本,你可以配置web.config文件来设置那么页面可以匿名访问,那些不可以。

    麻烦这位兄弟可以具体说下嘛?我是VS 2005开发的 用的.NET FRAMEWORK 2.0  谢谢

    打开google,输入:asp.net 2.0  访问控制
    然后点搜索。
    或者:
    打开msdn,左边栏点“index(索引)”然后输入:URL 身份验证
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • walkghost
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:36:148楼 得分:0
    另外,你也可以考虑下用session。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • brooklyng60
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:38:539楼 得分:0
    用户在没有登陆情况西访问其他页面都转向到登陆页面,这可以在配置文件中设置
    登陆后用脚本屏蔽地址栏就行了,很多系统网站都这样,最大限度的扩大操作界面,菜单栏,地址栏,状态栏都不要
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hhhh63
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:41:3210楼 得分:0
    msdn 验证
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • xuezj508
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:44:5311楼 得分:0
    需要验证啊
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • beijingbeerman
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:52:0812楼 得分:0
    你可以在登陆页用 session[name]=用户名 的方式记录一下。
    在其他也的 page_load()中判断一下,如果没有登录那麽 if session[name]=nothing or session[name]="" then
    response.redirect("首页地址")
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • kingcsx666
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:54:5813楼 得分:0
    session最简单啦,6楼的可行
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • houndsky
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:56:1214楼 得分:0
    你可以自定义一个控件,在这个控件里面设置好SESSION
    这样你只需要在每个需要登录的页面里面添加一下这个控件。
    如果SESSION中设置好需要登录的值为null的话,就跳转到登录页面
    这样不管你是在地址栏中直接输入URL地址也好,还是链接进来也好,只要SESSION过期或为空了。就一定需要登录
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • winflying36
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 11:59:1515楼 得分:0
    登录的时候存Session["yonghuid"],每个页面Page_lode 都判断Session是否存在不存在就跳到登录页面
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • stromboy007
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 12:07:2516楼 得分:0
    引用 12 楼 beijingbeerman 的回复:
    你可以在登陆页用 session[name]=用户名 的方式记录一下。
    在其他也的 page_load()中判断一下,如果没有登录那麽 if session[name]=nothing or session[name]="" then
    response.redirect("首页地址")
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yw0903
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 13:33:4117楼 得分:0
    记号
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • qinii
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 13:33:4318楼 得分:0
    楼上的session验证不能真正解决楼主的问题,如果user用户,直接访问admin的页面呢?
    这样不是还要增加权限的验证?
    有什么办法控制来源呢?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zds1010
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 13:40:2619楼 得分:0
    更具不同用户的具体要求:
    首先判断session值,不同的类型可以转到不同的登录界面,没有页面的后台都要判断,也就是权限问题·~~
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lfywy
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 13:43:0420楼 得分:0
    引用 2 楼 time_is_life 的回复:
    Forms验证,这么基本的东西。
    看看www.codehenry.com,
    怎么绕也饶不过去
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • xiaoxiangyumengdai
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 15:09:4921楼 得分:0
    一个不错的ASP.NET技术网站:http://singletowm.com/
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • xiaoxiangyumengdai
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 15:21:5222楼 得分:0
    你可以到ASP.NET技术网站:http://singletowm.com/,也许上面有你要解决的问题
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • mystring2009
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 15:21:5723楼 得分:0
    强烈楼主使用session验证!在验证与安全方面,session都很有成效的。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ppp7p
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 16:10:2524楼 得分:0
    session 和 froms 都可以。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • plgo_go
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 16:11:0725楼 得分:0
    只用过session验证!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • banditi225
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 16:58:5126楼 得分:0
    无聊的问题
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • f800051235
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 17:06:5227楼 得分:0
    引用 12 楼 beijingbeerman 的回复:
    你可以在登陆页用 session[name]=用户名 的方式记录一下。
    在其他也的 page_load()中判断一下,如果没有登录那麽 if session[name]=nothing or session[name]="" then
    response.redirect("首页地址")
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zhnzzy
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 17:39:1228楼 得分:0
    进入当前页面你首先要判断他的身份是否游客,游客不允许进
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • bestzrz
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 21:20:4729楼 得分:0
    之前都用session验证,前些日子才知道forms验证,看了一下,没真正用到,不过session应该够用了吧
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wuyq11
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 21:40:5730楼 得分:0
    用session,cookie验证
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jcrjia
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名