【解決方法】ユーザーがブラウザから URL にアクセスした場合、ログイン ページにリダイレクトします


みなさん、こんにちは。

asp.net C#、sqlserver 2005を使用してWebアプリケーションを作成しました。

この最初のページはログイン ページです。ユーザー名とパスワードがあればログインできます。

インナーページがたくさんあります。

アプリケーションを開いて、内部ページのリンクをコピーして貼り付けることができます。

内部ページのリンクを貼り付けると、ログイン ページにリダイレクトされるはずです。

ログインせずにアプリケーションを開かないでください。

しかし、ここでは、内部ページのリンクを貼り付けた後、アプリケーションにアクセスできます。

しかし、これは必要ありません。ブラウザに内部ページのリンクを貼り付けると、ログインページにリダイレクトされるはずです。

助けてください…ありがとう

解決策 1

これにはセッションを使用できます。 ログアウトしたら、すべてのセッション値をクリアする必要があります。
マスター ページを使用している場合は、マスター ページの読み込みイベントにこのコードを記述することができます。

C#
if (Convert.ToString(Session["UserName"]).Length <= 0)
       {
           Response.Redirect(Page.ResolveUrl("~/default.aspx"));
       }       

ここでのデフォルトのページはあなたのログインページです。

そしてログアウト時に書く必要があるはずです。

C#
Session.Abandon();
Response.Redirect("../Default.aspx");

解決策 2

ASP.Net を検索するとよいでしょう。 認可[^] & 認証[^]。 それはより確実な解決策になります。

CPにもこんな記事がありました。 ASP.NETの認証と認可[^]

幸運を、
おい

コメント

タイトルとURLをコピーしました