Open棟梁Project - マイクロソフト系技術情報 Wiki

目次

概要

特徴

One ASP.NET Identity System

ASP.NET frameworks ( ASP.NET MVC, Web Forms, Web Pages, Web API and SignalR ) で使用可能。

ユーザーに関するプロファイルデータを容易にプラグイン可能

Entity Frameworkのコードファーストを使用し、POCOクラスを拡張することが可能。

永続化の制御

ユニットテスト容易性

シンプルなロールプロバイダ

簡単に、「管理者」等のロールを作成し、ロールにユーザを追加ができる。

外部ログイン

簡単に、マイクロソフトアカウント、FacebookやTwitterやGoogleなどの外部ログインを追加できる。

クレームベース認証

クレームベース認証OAuth2.0)をサポート。

機能

基本機能

新機能

ASP.NET Forms認証との違い

No.FeaturesAsp.Net Forms AuthenticationOWIN Forms Authentication
1Cookie Authentication
クッキー認証
YesYes
2Cookieless Authentication
Cookieなしの認証
YesNo
3Expiration
有効期限
YesYes
4Sliding Expiration
スライディング有効期限
YesYes
5Token Protection
トークンの保護
YesYes
6Claims Support
クレームのサポート
NoYes
7Web Farm Support
Webファームのサポート
YesYes
8Unauthorized Redirection
無断リダイレクト
YesYes

資格情報へのアクセス

EntityFramework?

Entity Framework(Microsoft.AspNet??.Identity.EntityFramework?)が使用されており、
Entity Frameworkマイグレーションを使うことで、簡単にユーザー情報に項目を追加できる。

UserStore?

また、任意のストレージを使用するようにカスタマイズできる。
この際に、Entity Frameworkをキャンセルすることもできる。

クロスサイト

同一ドメインのASP.NET Identity

可能。

異なるドメインの他テクノロジとの連携

実装

基本機能

サインアップ

基本のテンプレートに実装されている。

サインイン・サインアウト

基本のテンプレートに実装されている。

アカウントの編集

基本のテンプレートに実装されている。

サインアップの機能強化

ユーザ名の重複不可設定

基本のテンプレートに実装されている。

パスワード検証

基本のテンプレートに実装されている。

2要素認証

E-Mail Confirmation

以下を参考にして実装する。

サインインの機能強化

SecurityStamp?

アカウントの編集後(主にパスワード変更を想定)、
他のブラウザでログインしているユーザはサインアウトされる。

基本のテンプレートに実装されている。

外部ログイン

詳しくは「ASP.NET Identityの外部ログイン」を参照。

クレームベース認証

詳しくは「ASP.NET IdentityのToken 認証?」を参照。

運用の機能強化

アカウント・ロックアウト

基本のテンプレートに実装されている。

パスワード・リセット

基本のテンプレートに実装されている。

管理機能

下記、拡張テンプレートに実装されている。

拡張テンプレートを取得

PMからInstall-Packageする。

追加・更新されるモジュール

Microsoft.AspNet?.Identity.Samplesで、以下のモジュールが適用される。

<Compile Include="Controllers\RolesAdminController.cs" />
<Compile Include="Controllers\UserAdminController.cs" />
・・・
<Compile Include="Models\AdminViewModel.cs" />
・・・
<Content Include="Views\UsersAdmin\Index.cshtml" />
<Content Include="Views\UsersAdmin\Edit.cshtml" />
<Content Include="Views\UsersAdmin\Details.cshtml" />
<Content Include="Views\UsersAdmin\Delete.cshtml" />
<Content Include="Views\UsersAdmin\Create.cshtml" />
<Content Include="Views\RolesAdmin\Index.cshtml" />
<Content Include="Views\RolesAdmin\Edit.cshtml" />
<Content Include="Views\RolesAdmin\Details.cshtml" />
<Content Include="Views\RolesAdmin\Delete.cshtml" />
<Content Include="Views\RolesAdmin\Create.cshtml" />
<Content Include="Views\Account\DisplayEmail.cshtml" />

OWIN is dead ?

ASP.NET Core

素組

OWIN が微妙ということであれば、下記のように、素組で実装できる
(ただし、プロトコルを理解して実装を行う必要がある。下記はOAuth。)。

参考

The ASP.NET Site

ASP.NET Identity
http://www.asp.net/identity

msdn.microsoft.com

.NET Web Development and Tools Blog

Introducing ASP.NET Identity – A membership system for ASP.NET applications
https://blogs.msdn.microsoft.com/webdev/2013/06/27/introducing-asp-net-identity-a-membership-system-for-asp-net-applications/

Cutting Edge

Tsmatz

ASP.NET Identity

THE TRUTH IS OUT THERE

その他

ASP.NET Identity入門連載一覧:CodeZine?(コードジン)

https://codezine.jp/article/corner/511

ASP.NET Identity カテゴリーの記事一覧 - kendik.net

http://kendik.hatenablog.com/archive/category/ASP.NET%20Identity

かずきのBlog@hatena

Qiita

Series: Owin Authentication « Passion for Coding

https://coding.abel.nu/series/owin-authentication/

CodeProject?


Tags: :ASP.NET, :ASP.NET MVC, :ASP.NET SPA, ASP.NET Web API, :ASP.NET Identity


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS