请问使用Session实现自定义身份验证,比Forms窗体身份验证好么?

lufree 2008-01-21 04:21:09
现在有一个系统,我使用了Session自定义的身份验证:

即在Global.asax.cs中的Session_Start方法中写入:

Session["User"] = null;//用户类
Session["LoginOK"] = "0";//用户是否已经登录,0:未登录;1:已经登录

然后在用户登录,判断用户名密码正确以后,将相关的值写入上述的Session,

User user = new User;
........
Session["User"] = user;//用户类
Session["LoginOK"] = "1";//用户是否已经登录,0:未登录;1:已经登录


然后当用户点击注销时,再次往Session中写入

Session["User"] = null;//用户类
Session["LoginOK"] = "0";//用户是否已经登录,0:未登录;1:已经登录


然后当某些页面需要用户登录再访问时,就查询Session["LoginOK"]是不是等于1,等于1则为已经登录,否则为未登录。


请问这种自定义的实现登录的方法,比起.net自身的Forms窗体身份验证如何?我认为安全性要高一些吧?应该是更可靠?虽然写起来麻烦一些。


请各位指教,谢谢了!


...全文
271 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
lufree 2008-01-28
  • 打赏
  • 举报
回复
顶一下!
chzhu823 2008-01-23
  • 打赏
  • 举报
回复
如果你用母板页的话,可以将它每个页面的判断放在模板页里面,不需判断的不用母版页。
也可以做一个自定义控件,用来判断
lufree 2008-01-23
  • 打赏
  • 举报
回复
顶一下!
lufree 2008-01-22
  • 打赏
  • 举报
回复
ding
lsq667 2008-01-22
  • 打赏
  • 举报
回复
microsoft自带的是没错,可能比自己的要写的好,但是怎么说也是自己写的东西用起来方便啊~~
而且验证上自己感觉比自带的要好,灵活,方便
zyug 2008-01-22
  • 打赏
  • 举报
回复
唉.
asp.net就自带身份验证

比你这个.我认为还是ms稍微高明点
yoursWTR 2008-01-22
  • 打赏
  • 举报
回复
用Session用户一多你服务器就嗝屁了,
lufree 2008-01-21
  • 打赏
  • 举报
回复
ding
deepinnet 2008-01-21
  • 打赏
  • 举报
回复
喜欢自己DIY,想怎么整就怎么整。出问题了自己也方便查找
LutzMark 2008-01-21
  • 打赏
  • 举报
回复
可行,
写个验证类或用2.0的母版页基类,写个用Session的验证方法
在具体页的Page_Load方法里调用验证方法
不登陆直接打地址也会被验证的
sxlfybb 2008-01-21
  • 打赏
  • 举报
回复
用了微软的东西,都不记得自己是干什么的了。
sxlfybb 2008-01-21
  • 打赏
  • 举报
回复
我的都是自己写的,所有需要认证的页面,继承自一个父类,在父类中进行权限检测。
闲游四疯 2008-01-21
  • 打赏
  • 举报
回复
E。。飘过~
kyouken2007 2008-01-21
  • 打赏
  • 举报
回复
我觉得其实问题都是一样的。
不用forms要通过用户名来判断身份。
用forms也可以不用角色,直接通过用户名来判断。
我觉得问题不在这里。

自己写也无所谓,条条大陆通罗马嘛。
ms只是在让程序员省事,相对安全的前提下,整出那些东西。
lufree 2008-01-21
  • 打赏
  • 举报
回复


直接输入要访问的地址,回被转到登陆页面。


我这个系统分为个人用户和企业用户,两种,如果非要用Forms验证只能用角色来实现了
kyouken2007 2008-01-21
  • 打赏
  • 举报
回复
如果不登陆,直接输入要访问的地址那怎么办?
还要再写代码来控制吧。
Forms验证都做好了为啥不用呢,
另外,为什么你觉得这样比Forms验证安全性高呢?
lufree 2008-01-21
  • 打赏
  • 举报
回复

那倒不用,继承一个类就可以
kyouken2007 2008-01-21
  • 打赏
  • 举报
回复
n个页面岂不是要写n此判断?

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧