0

サイトでユーザーとロールを作成および管理するためにメンバーシップ プロバイダーを使用しています。次のルールで web.config をこのフォルダーに使用して、アカウントフォルダーへの特定のロールへのアクセスを制限しようとしています:

<system.web>
  <authorization>
    <allow roles="Administrator"/>
    <deny users="*" />
  </authorization>
</system.web>

以下に示すような Web フォームとフォーム認証を使用しています。

<authentication mode="Forms">
  <forms loginUrl="~/Login.aspx" timeout="2880" defaultUrl="~/" />
</authentication>

しかし、アカウントフォルダーにあるページにアクセスしようとすると、次のようになります。

HTTP エラー 404.0 - 見つかりません お探しのリソースは削除されているか、名前が変更されているか、一時的に利用できません。エラーのある画像の下:

ここに画像の説明を入力

ユーザーが許可されていないフォルダまたは URL にアクセスしようとしたときに、ログインにリダイレクトするにはどうすればよいですか?

4

1 に答える 1

1

存在しないLogin.aspxようなものにアクセスしています。/Account/Login/Default.aspx

そうではない~/Account/Login.aspxでしょうか?

<authentication mode="Forms">
  <forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>

デバッグする方法は?

  1. Login.aspx に正しくアクセスできることを確認します。
  2. 次に、上記のように web.config の form タグ内にその URL を貼り付けます。
于 2013-07-10T14:36:24.763 に答える