积极答复者
打开新链接的问题

问题
-
如果某个页面有文本框,输入字符“mykey“ 以后才能进入另外一个页面www.mypage.com,可是如果别人可以直接打开www.mypage.com链接就能进入这个页面,这样就不能很好地保护自己的信息,怎么样让别人输入www.mypage.com进入不了这个页面,一定要输入用户名密码才能进入www.mypage.com这个页面,有什么好的解决办法?
答案
-
在输入完"mykey"后把字符存到Session里后进入
www.mypage.com去判断该Session是否为Nothing
为Nothing的话,就重新导回去,不是Nothing的话表示已输入过字符,流程继续往下执行
关于Session的运用您可以参考MVP的文章
http://www.dotblogs.com.tw/mis2000lab/archive/2008/08/27/5209.aspx
- The blog of typewriter職人
- Convert C# to VB.NET
- /*If my concept is wrong ,please correct me.Thanks.*/
- 已编辑 Shadow .Net 2012年1月17日 14:10
- 已建议为答案 ThankfulHeart 2012年1月18日 2:41
- 已标记为答案 BU XI - MSFTModerator 2012年1月25日 8:45
-
或許你可以考慮使用ASP.NET所提供的Membership機制來防止匿名使用者存取你的頁面。
http://msdn.microsoft.com/en-us/library/ff648345.aspx
以上說明若有錯誤請指教,謝謝。
http://www.dotblogs.com.tw/terrychuang/- 已建议为答案 ThankfulHeart 2012年1月18日 2:41
- 已标记为答案 BU XI - MSFTModerator 2012年1月25日 8:46
-
如果某个页面有文本框,输入字符“mykey“ 以后才能进入另外一个页面www.mypage.com,可是如果别人可以直接打开www.mypage.com链接就能进入这个页面,这样就不能很好地保护自己的信息,怎么样让别人输入www.mypage.com进入不了这个页面,一定要输入用户名密码才能进入www.mypage.com这个页面,有什么好的解决办法?
另外一个办法,你到web.config文件中配置Form Authentication模式,强制如果用户未登录,系统自动跳转到输入字符mykey的那个页面,一旦输入以后通过FormsAuthentication.SetAuthCookie+Response.Redirect("www.mypage.com")即可。配置参数大致如下:
【web.config】
<system.web>
<authentication mode="Forms">
<forms cookieless="AutoDetect" loginUrl="Login.aspx" path="/" defaultUrl="MyPage.aspx"/>
</authentication>
<authorization>
<deny users="?"/>
</authorization>………………
【项目组织结构】
【页面代码,Login.aspx】
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Login.aspx.cs" Inherits="WebCSharp.Login" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:textbox ID="Textbox1" runat="server"></asp:textbox>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</div>
</form>
</body>
</html>
【页面代码,MyPage.aspx】
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MyPage.aspx.cs" Inherits="WebCSharp.MyPageaspx" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h1>我的Page</h1>
</div>
</form>
</body>
</html>【后台Login.aspx代码】
namespace WebCSharp
{
public partial class Login : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
if (Textbox1.Text == "mykey")
{
FormsAuthentication.SetAuthCookie("你的用户名", true);
Response.Redirect("MyPage.aspx");
}
}
}
}QQ我:
下载MSDN桌面工具(Vista,Win7)
我的博客园
慈善点击,点击此处- 已标记为答案 BU XI - MSFTModerator 2012年1月25日 8:46
-
在输入完"mykey"后把字符存到Session里后进入
www.mypage.com去判断该Session是否为Nothing
为Nothing的话,就重新导回去,不是Nothing的话表示已输入过字符,流程继续往下执行
关于Session的运用您可以参考MVP的文章
http://www.dotblogs.com.tw/mis2000lab/archive/2008/08/27/5209.aspx
- The blog of typewriter職人
- Convert C# to VB.NET
- /*If my concept is wrong ,please correct me.Thanks.*/
QQ我:
下载MSDN桌面工具(Vista,Win7)
我的博客园
慈善点击,点击此处- 已标记为答案 BU XI - MSFTModerator 2012年1月25日 8:46
全部回复
-
在输入完"mykey"后把字符存到Session里后进入
www.mypage.com去判断该Session是否为Nothing
为Nothing的话,就重新导回去,不是Nothing的话表示已输入过字符,流程继续往下执行
关于Session的运用您可以参考MVP的文章
http://www.dotblogs.com.tw/mis2000lab/archive/2008/08/27/5209.aspx
- The blog of typewriter職人
- Convert C# to VB.NET
- /*If my concept is wrong ,please correct me.Thanks.*/
- 已编辑 Shadow .Net 2012年1月17日 14:10
- 已建议为答案 ThankfulHeart 2012年1月18日 2:41
- 已标记为答案 BU XI - MSFTModerator 2012年1月25日 8:45
-
或許你可以考慮使用ASP.NET所提供的Membership機制來防止匿名使用者存取你的頁面。
http://msdn.microsoft.com/en-us/library/ff648345.aspx
以上說明若有錯誤請指教,謝謝。
http://www.dotblogs.com.tw/terrychuang/- 已建议为答案 ThankfulHeart 2012年1月18日 2:41
- 已标记为答案 BU XI - MSFTModerator 2012年1月25日 8:46
-
如果某个页面有文本框,输入字符“mykey“ 以后才能进入另外一个页面www.mypage.com,可是如果别人可以直接打开www.mypage.com链接就能进入这个页面,这样就不能很好地保护自己的信息,怎么样让别人输入www.mypage.com进入不了这个页面,一定要输入用户名密码才能进入www.mypage.com这个页面,有什么好的解决办法?
另外一个办法,你到web.config文件中配置Form Authentication模式,强制如果用户未登录,系统自动跳转到输入字符mykey的那个页面,一旦输入以后通过FormsAuthentication.SetAuthCookie+Response.Redirect("www.mypage.com")即可。配置参数大致如下:
【web.config】
<system.web>
<authentication mode="Forms">
<forms cookieless="AutoDetect" loginUrl="Login.aspx" path="/" defaultUrl="MyPage.aspx"/>
</authentication>
<authorization>
<deny users="?"/>
</authorization>………………
【项目组织结构】
【页面代码,Login.aspx】
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Login.aspx.cs" Inherits="WebCSharp.Login" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:textbox ID="Textbox1" runat="server"></asp:textbox>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</div>
</form>
</body>
</html>
【页面代码,MyPage.aspx】
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MyPage.aspx.cs" Inherits="WebCSharp.MyPageaspx" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h1>我的Page</h1>
</div>
</form>
</body>
</html>【后台Login.aspx代码】
namespace WebCSharp
{
public partial class Login : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
if (Textbox1.Text == "mykey")
{
FormsAuthentication.SetAuthCookie("你的用户名", true);
Response.Redirect("MyPage.aspx");
}
}
}
}QQ我:
下载MSDN桌面工具(Vista,Win7)
我的博客园
慈善点击,点击此处- 已标记为答案 BU XI - MSFTModerator 2012年1月25日 8:46
-
在输入完"mykey"后把字符存到Session里后进入
www.mypage.com去判断该Session是否为Nothing
为Nothing的话,就重新导回去,不是Nothing的话表示已输入过字符,流程继续往下执行
关于Session的运用您可以参考MVP的文章
http://www.dotblogs.com.tw/mis2000lab/archive/2008/08/27/5209.aspx
- The blog of typewriter職人
- Convert C# to VB.NET
- /*If my concept is wrong ,please correct me.Thanks.*/
QQ我:
下载MSDN桌面工具(Vista,Win7)
我的博客园
慈善点击,点击此处- 已标记为答案 BU XI - MSFTModerator 2012年1月25日 8:46