13

このブログをフォローして、エリアを機能させようとしています。

http://mstechkb.blogspot.com/2010/10/areas-in-aspnet-mvc-20.html

ブログ投稿では、エリアごとに認証を設定する機能を識別します。たとえば、次のようになります。

<location path="Area1">
  <system.web>
  <authentication mode="Windows" />
  <authorization> 
    <allow roles="role1,role2"/>
    <deny users="*"/> 
  </authorization> 
</system.web>
</location>

ただし、Visual Studio 2010 の新しいプロジェクトでこれを作成しようとすると、実行時に次のエラーが発生します。

アプリケーション レベルを超えて allowDefinition='MachineToApplication' として登録されたセクションを使用するとエラーになります。このエラーは、IIS で仮想ディレクトリがアプリケーションとして構成されていないことが原因である可能性があります。

これは、最上位の web.config にない限り、認証要素を指定できないためです。

それで、ブログ投稿が言うことをすることは可能ですか? web.config の Location 要素内に Authentication 要素を持つ Area を設定できますか?

4

1 に答える 1

-2

ASP.NET MVC について学んだことは、ルーティング システムの動作を考慮すると、[Authorization] 属性を個々のコントローラーに適用して承認規則を設定する方が安全で適切であるためです。

于 2011-11-18T03:53:12.797 に答える