.net column

.NET開発者のためのブログメディア
ユーザー登録

ASP.NET Identityとは?ユーザーの登録フォームを作成する方法

2020年07月28日

ASP.NET Identityは「One ASP.NET」というビジョンのもと、様々なスタイルのASP.NETアプリケーションで使用できるようデザインされました。
ASP.NET Identityを使えば、柔軟なユーザー認証機能を実装することが可能です。

PG
ASP.NET Identityってどんな機能でしょうか?
PL
ASP.NET Identityとは、Visual Studio 2013リリース時に、新しく追加された認証・資産管理のフレームワークです。それまであったいくつかの問題が解決され、簡単に使えるようになりました。

ASP.NET Identityはユーザー認証機能を実装できる

ASP.NET Identityはそれまであった複数の問題が解決されており、下記のような特徴を持っています。

    • ◆ユーザー情報のカスタマイズが容易

IDやパスワードなどの基本情報以外に、誕生日や出身地の情報を追加することができます。
資格情報へのアクセスは、Entity Frameworkが使用されており、自動マイグレーションによる拡張も簡単に実行が可能です。

    • ◆データストアが柔軟

SQL Server以外にも、RDBMSやNoSQLといった他のデータベースとの連携が簡単にできます。

    • ◆ユニットテストが容易

インターフェースを軸にAPIが構築されており、実装を切り替えたユニットテストも可能になりました。

    • ◆ソーシャルログインが可能

FacebookやTwitter、Googleなどの外部アカウントを利用した認証ができます。
認証にはOWINの認証用ミドルウェアを使用しており、ソーシャルログインを簡単に行うことが可能です。

    • ◆その他の機能

ASP.NET Identityは非同期処理をサポートしており、処理のほとんどは非同期メソッドとなっています。
また、セキュリティスタンプによる、どこでもサインアウトが可能です。この機能は、複数のブラウザでサービスにログインした際、アカウント情報に相違があれば、一方のブラウザから強制的にセッションをサインアウトさせる仕組みです。

ASP.NET Identityでユーザー認証を実装する方法

Visual Studio 2013以降で標準テンプレートを使えば、ASP.NET Identityのユーザー認証を組み込んだアプリケーションが簡単に開発できます。
今回はVisual Studio 2019で、Webアプリケーションを作成します。ASP.NET Identityでユーザーの登録フォームを作成する手順を確認していきましょう。

新しいプロジェクトを作成する

Visual Studioを立ち上げ、「新しいプロジェクトの作成」をクリックします。

新しいプロジェクトの作成

表示されたテンプレート一覧から、「ASP.NET Webアプリケーション(.NET Framework)」を選択して、「次へ」をクリックします。

ASP.NET Webアプリケーション

次に表示されるプロジェクトの構成は、任意で選択してください。

認証の設定を「個別のユーザーアカウント」に変更

今回は、例としてWebフォームアプリケーションを作成するので、「Web Forms」を選択します。

Web Forms

そして、画面(下図)右側に表示されている「認証」をクリックし、「個別のユーザーアカウント」を選択して「OK」をクリックします。

個別のユーザーアカウント

「個別のユーザーアカウント」が、ASP.NET Identityを使用することを表しています。これでアプリケーションの構築は完了です。

ブラウザにホーム画面を表示させる

次に、ASP.NET Identityの挙動を確認していきましょう。
作成したWebアプリケーションをデバッグして、ブラウザにホーム画面を表示させます。

登録をクリック

次に、右上の「登録」をクリックし、登録画面に遷移します。

登録画面

ここで各項目に任意の値を入力して、「登録」をクリックすればユーザー情報の登録が完了です。ログイン画面でユーザー情報を入力すれば、ログインが可能となりました。

PG
ASP.NET Identityって、簡単ですごく便利なんですね!
PL
簡単に使えるうえに柔軟なカスタマイズが可能なので、重宝されている認証・資格管理のフレームワークなのですよ。

ASP.NET Identityはユーザー登録が簡単にできる

ASP.NET Identityを使えば、特別な操作なしにユーザー登録フォームを作成できます。
ユーザー管理が必要なアプリケーションの開発には、心強いフレームワークです。ソーシャルログインも可能であるため、興味のある方は試してみてください。

>>>ASP.NETの案件を探すならFEnet .NET Navi


.NET分野でのキャリアアップをお考えの方は、現在募集中の求人情報をご覧ください。

求人一覧

また、直接のエントリーも受け付けております。

エントリー(応募フォーム)