.NET MVCのAuthorizeAttributeクラスを使用して身元を確認します。

ASP.NET MVCでは、AuthorizeAttributeクラスを使用して認証を行うことができます。AuthorizeAttributeは、コントローラーまたはコントローラー内の個々のアクションメソッドに適用できる属性クラスです。

AuthorizeAttributeを適用すると、現在のユーザーがそのアクションメソッドまたはコントローラにアクセスする権限があるかどうかがチェックされます。ユーザーに権限がない場合、AuthorizeAttributeは自動的にログインページにリダイレクトするか、HTTP 401の未許可ステータスコードを返します。

以下是一个简单的例子,展示如何使用AuthorizeAttribute类进行身份验证:

[Authorize]
public class HomeController : Controller
{
    public ActionResult Index()
    {
        return View();
    }

    [Authorize(Roles = "Admin")]
    public ActionResult AdminOnly()
    {
        return View();
    }
}

例えば、HomeControllerクラスにAuthorize属性が適用されている場合、認証済みのユーザーのみがHomeController内のどのアクションメソッドにもアクセスできることを意味します。

さらに、AdminOnlyアクションメソッドでは、Authorize属性が適用されており、Rolesパラメータで”Admin”ロールを持つユーザーのみがアクセスできるように指定されています。

Web.configファイルで認証設定を構成することができます。例えば、

<system.web>
  <authentication mode="Forms">
    <forms loginUrl="~/Account/Login" timeout="2880" />
  </authentication>
  <authorization>
    <deny users="?"/>
  </authorization>
</system.web>

上記の例では、authentication要素はForms認証を使用し、ログインページのURLとタイムアウト時間を指定します。authorization要素は、未認証のユーザーがすべてのコントローラーやアクションメソッドにアクセスできないようにします。

AuthorizeAttributeを使用して認証を行う際には、適切な認証プロバイダーとロールプロバイダーを設定する必要があります。ASP.NETの組み込み認証プロバイダーを使用することもできますが、独自の認証ロジックをカスタマイズすることも可能です。

bannerAds