タグ

ASP.NET Identityに関するkazu_levis501のブックマーク (3)

  • ASP.NET Identityで任意のデータストアを使う

    ユーザー登録処理イメージ 前回は独自の認証処理を行うため、独自のUserStoreクラスを実装するところまで行いました。今回はユーザー登録に関する実装を進めていきましょう。まずはユーザー登録の流れを見ていきましょう(図1)。 図1 ユーザー作成処理のカスタマイズイメージ RegisterページにてUserManagerExtensionsクラスを通じて、ApplicationUserManageクラスのCreateAsync非同期メソッドにユーザー情報とパスワードを渡して呼び出します。UserManagerクラスでは、内部に持つ独自に作成したApplicationUserStoreクラスを使ってユーザー情報を作成します。このユーザー作成処理は、具体的には次のような手順になっています。 1) ユーザー情報にパスワードを設定 ApplicationUserStoreクラスのSetPasswor

    ASP.NET Identityで任意のデータストアを使う
  • ASP.NET Identityでユーザーに役割(ロール)を持たせる

    ロール機能とは アプリケーションを使う上で、特定のユーザーにのみ操作を制限したいというケースはよくあることです。例えば、社員の管理を行う機能は、一般のユーザーが勝手に操作できては困るので、社員を管理する「役割」を持ったユーザーでのみ操作を行えるようにする、といった具合です。 こういった時に一番簡単なのは、「操作が可能である」という情報を各機能、各ユーザー毎に設定することです。この方法は機能数、ユーザー数が少なければ、うまくいくでしょう。しかし、どちらかが多くなってくると、途端に管理しきれなくなってきます。 そこで、この問題を解決するために「役割(ロール、権限)」という概念を導入します。まずある一定の役割を持ったユーザーをグループ化ます。そして、各機能に対してはユーザー単位でなくロール単位で操作できるかどうかを設定します。こうすることで、役割やユーザーの増減に伴う影響を少なくできるのです。

    ASP.NET Identityでユーザーに役割(ロール)を持たせる
  • ASP.NET Identityでユーザーを管理する

    ユーザー管理機能の必要性 これまで様々な認証方法を紹介してきましたが、そのどれもが「利用者がユーザー情報を登録、変更する」ことを前提としていました。しかし、実際のWebアプリケーションでは、管理、運用を行う側で、集中的にユーザー情報を管理したいケースが多々あります。例えば、新たなユーザーの代理登録を行ったり、不要なユーザーを削除したり、パスワードを忘れたユーザーのパスワードを変更したり、といったものです。 こういった運用は、もちろんデータベースに登録されたユーザー情報テーブル等のデータを、直接変更することでも対処は可能です。しかし、データを直接操作するのは、その手順自体が煩雑なことに加え、アプリケーションで行っている多くの検証をスキップしてしまうこともあり、データの不整合が発生する可能性が非常に高くなります。 そのため、できることならアプリケーション側でユーザー情報を管理する手段を用意し、

    ASP.NET Identityでユーザーを管理する
  • 1