2012-04-24 22 views
0

私はasp.netサイトをパスワードで保護しようとしていますが、これは大丈夫ですが、アドレスの最後に/home.aspxを置くとログインページを渡すことで、ボタンを介してアクセス可能な他のページを作成する方法があります。直接アクセスすると、ログインページにリダイレクトされますか?ログインパスワードを使用してasp.netサイトを保護するパスワード

おかげ

+0

詳細を入力する必要があります。ログインにはどのようなテクニックを使用していますか?いくつかのサンプルコードを表示してください – Curt

+0

私は現在、ハードコードされたパスワードとユーザー名を使用しています。これは、私が作っているサイトの種類には問題ありません。私は/home.aspxなどを停止してURLの最後に書いていますログインページを渡してください。 – Sophie

答えて

0

ログインする瞬間、セッションを開始する必要があります。 これは私がこれは、ユーザーが管理者や、基本的なユーザーだった場合、私は検出に使用方法です私の高校のプロジェクトの一つ

> public void LoginUser(string id, string mail, string ww, string admin) 
>  { 
>   Session["UserID"] = id; 
>   Session["IsAdmin"] = admin; 
>   if(admin == "admin") 
>   { 
>    Response.Redirect("~/Admin/AdminCP.aspx"); 
>   } 
>   else if (admin == "user") 
>   { 
>    Response.Redirect("~/User/UserCP.aspx"); 
>   } 
>   else 
>   { 
>    lblLoginError.Text = "An error has accurred"; 
>    lblLoginError.Visible = true; 
>    lblLoginError.CssClass = "failureNotification left"; 
>   } 
>  } 

で使用されるいくつかのコードです。この後 は、Page_Loadのセクション内のすべてのページには、セッションのユーザーIDが実行されている場合、これは毎回チェックします

> if (Session["UserID"] == null) 
>   { 
>    Response.Redirect("~/Account/Login.aspx"); 
>   } 

を追加する必要があります。それが空であれば、ログインは起こらなかったので、ユーザーはログインできるページにリダイレクトされます。

希望する;-)

0

あなたには、いくつかの他の方法を使用していない限り...ちょうどMSDNのasp.netメンバーシッププロバイダーのドキュメントをチェックアウト:

http://msdn.microsoft.com/en-us/library/ff648345.aspx

あなたは下へ、右にスクロールした場合、これは何です探していますが、このページに必要なすべての情報が表示されます。

0

セッションでログオン状態を保存し、正常にログインした場合にのみ設定されるisLoggedinフラグのページロードまたはプリ初期化をチェックできます。これにより、ログインしているページに直接ナビゲートすることはできませんが、ログインしていない場合はそれらを保持し続けることはありません。

+0

これについていくつかのコード例を教えてください。ログインしたユーザーはすべてのページを見ることができますので、あなたが言っていることは理想的でしょう – Sophie

+0

ログオンスクリプトには セッション["LoggedIn"] = "true" とページロードまたはonInit if(セッション["LoggedIn"] == null ||セッション["LoggedIn"] ToString()!= "true") { response.redirect //ログインページ } – ReiMasuro

関連する問題