4

すべてのユーザーが利用できるMVC4アプリケーションがあり、ログインは必要ありません。次のように、Web.Configを介してWindows認証を適用する必要があるコントローラーは1つだけです。

  <authentication mode="Windows" />
    <authorization>
      <allow users="domain\jsmith" />
      <deny users="*" />
    </authorization>

コントローラはMySite.Com/MyApp/MyAdminReportControllerになります

これが可能なら、どうやって?

4

1 に答える 1

5

Windows認証が必要で、認証のみが必要なパスを指定するだけだと思います。Forms authも必要ない場合は、次のようになります。

<configuration>
  ...
  <system.web>
    ......
    <authentication mode="Windows">
    </authentication>
  </system.web>
  <location path="MyAdminReport">
    <system.web>
      <authorization>
        <deny users="?" />
      </authorization>
    </system.web>
  </location>

</configuration>

これはWeb構成アプローチであり、他のオプションはコントローラーに[Authorize]属性を追加することです(ホールコントローラーでなくても、特定のアクションに対してのみこの属性を追加できます)。

[Authorize]
public class MyAdminReportController : Controller
{

   //[Authorize]
   public ActionResult PrivatePage()
   {
      return View();
   }


}
于 2013-03-19T17:30:31.637 に答える