关于框架页安全性问题,急急急!100分以表诚意

sasagun 2005-08-23 11:55:48
我有个框架页default.aspx,里面的框架页分别是TOP.ASPX,LEFT.ASPX,MAIN.ASPX
现在有用户在上次打开过Default.aspx后,地址栏会记录里面的页,在下次打开时就直接打开main.aspx,怎么样防止这种现象?强制用户必须要打开default.aspx?
...全文
108 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
MonkWang 2006-07-05
  • 打赏
  • 举报
回复
你得自己做判断才行啊!
vagerent 2006-07-05
  • 打赏
  • 举报
回复
还不如直接masterpage呢
jwt3000 2006-07-05
  • 打赏
  • 举报
回复
<HTML>
<HEAD>
<title>WebForm1</title>
<META http-equiv="Pragma" content="no-cache">
<META http-equiv="Cache-Control" content="no-cache">
<META http-equiv="Expires" content="0">
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
</HEAD>
hanchi8008 2006-07-05
  • 打赏
  • 举报
回复
sunnystar365(淡淡忧伤)

是好方法,可以强制进入页.
dljinsui 2006-07-05
  • 打赏
  • 举报
回复
可以使用FORM验证,修改webconfig配置文件
<authentication mode="Forms">
<forms name="WorkLog" loginUrl="Login.aspx"></forms>
</authentication>

<!-- 授权
此节设置应用程序的授权策略。可以允许或拒绝不同的用户或角色访问
应用程序资源。通配符: "*" 表示任何人,"?" 表示匿名
(未经身份验证的)用户。
-->

<authorization>
<deny users="?"/> <!-- 允许所有用户 -->
<!-- <allow users="[逗号分隔的用户列表]"
roles="[逗号分隔的角色列表]"/>
<deny users="[逗号分隔的用户列表]"
roles="[逗号分隔的角色列表]"/>
-->
</authorization>
把Login.aspx改为你的Default.aspx,下面用<deny users="?"/>,
这样的话,如果用户没有登陆的,就会自动跳转到你的default.aspx页面


=========================================

我把上面的原话贴到我的XML文件里面。

为什么不好用???

cityhunter172 2005-08-23
  • 打赏
  • 举报
回复
只能用脚本进行控制,要不你就用 window.open("Default.aspx","","toolbar=no") 不显示地址栏

<script language="javascript">
<!--
if(window.parent.main == null)
{
window.location.reload("Default.aspx");
}

Session 值控制不了,因为可以在打开 "Default.aspx" 之后
就在 IE 栏直接输入 main.aspx 的网址
如此一来,Session 再怎么判断也不行的
mapserver 2005-08-23
  • 打赏
  • 举报
回复
很简单的,在Session里保存一个值,访问default.aspx页面的时候就把这个改掉,当用户访问TOP.ASPX,LEFT.ASPX,MAIN.ASPX的时候,判断session里的值是否被改掉,没有改的话,就页面重定向到default.aspx就好。
brando_beat 2005-08-23
  • 打赏
  • 举报
回复
这种情况、只要记录相应的信息、比如说你在框架里面记录了一个session、
然后在打开main.aspx的时候、判断这个session有没有、没有就返回default.aspx

你不是问了一遍了吗??
sasagun 2005-08-23
  • 打赏
  • 举报
回复
自己顶一下,有没有人想过这个问题啊,我曾经见过有解决方案的,但当时没有留意
goody9807 2005-08-23
  • 打赏
  • 举报
回复
通过在main或其他页面中设置一个Session来验证是否是正确登陆,如果要是从地址栏中直接输入的,那么就跳回首页
sunnystar365 2005-08-23
  • 打赏
  • 举报
回复
可以使用FORM验证,修改webconfig配置文件
<authentication mode="Forms">
<forms name="WorkLog" loginUrl="Login.aspx"></forms>
</authentication>

<!-- 授权
此节设置应用程序的授权策略。可以允许或拒绝不同的用户或角色访问
应用程序资源。通配符: "*" 表示任何人,"?" 表示匿名
(未经身份验证的)用户。
-->

<authorization>
<deny users="?"/> <!-- 允许所有用户 -->
<!-- <allow users="[逗号分隔的用户列表]"
roles="[逗号分隔的角色列表]"/>
<deny users="[逗号分隔的用户列表]"
roles="[逗号分隔的角色列表]"/>
-->
</authorization>
把Login.aspx改为你的Default.aspx,下面用<deny users="?"/>,
这样的话,如果用户没有登陆的,就会自动跳转到你的default.aspx页面
sykpboy 2005-08-23
  • 打赏
  • 举报
回复
<script language="javascript">
<!--
if(window.parent.main == null)
{
window.location.reload("Default.aspx");
}

62,047

社区成员

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

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

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

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