Open棟梁 wiki
目次 †
概要 †
ASP.NET Identityを使用した認証サイト。
機能 †
基本機能 †
サインアップ (済) †
サインイン (済) †
サインアウト (済) †
アカウント編集 †
サインアップの機能強化 (済) †
ユーザ名の重複不可設定 (済) †
パスワード検証 (済) †
2要素認証 (済) †
以下で使用される。
- アカウント確認(E-mail confirmation) (済)
- アカウント編集(電話番号、SMS) (済)
- パスワード・リセット(E-mail) (済)
アカウント確認(E-mail confirmation)(済) †
サインインの機能強化 (済) †
SecurityStamp? (済) †
運用の機能強化 †
アカウント・ロックアウト (済) †
パスワード・リセット (済) †
管理機能 (済) †
- ユーザ編集・削除 (済)
- ロール編集・削除 (済)
- 注
- 編集可能なユーザ属性が少ない(現状、Name = E-mailのみ編集可能)
- データ量が多い場合に耐えられない実装になっている(ページング実装無し)。
- マルチテナント対応の無い実装になっている。
メモ †
ExternalLoginCallback?の条件分岐 †
- 外部ログインの成否
- 外部ログインの有・無
- 外部ログインがある→そのままサインイン(正常終了)
- 外部ログインがない→外部ログインの作成、(3)へ。
- 外部ログインの作成
- 当該ユーザが既にサインアップされている。
→ 外部ログインを追加してサインイン(正常終了)
- 当該ユーザが未だサインアップされていない。
→ サインアップ後に外部ログインを追加してサインイン(正常終了)
#外部ログイン追加、サインアップ、サインインの成否は省略。
外部ログイン削除のテストケース †
- サインアップ→サインアップ済みの状態から外部ログイン
- 内部ログイン→内部ログアウト
- 外部ログイン追加(外部ログイン)→外部ログアウト
- 外部ログイン→外部ログイン削除→★→外部ログアウト
- 外部ログイン追加(外部ログイン)→外部ログアウト
- 外部ログイン→外部ログイン削除→★→外部ログアウト
- 内部ログイン→内部ログアウト(外部ログイン削除後も、内部ログインは可能)
- サインアップせずに、外部ログイン
- 外部ログイン追加(外部ログイン)→外部ログアウト
- 外部ログイン→☆外部ログイン削除→外部ログアウト
- 外部ログイン追加(外部ログイン)→外部ログアウト
- ★の外部ログイン削除後のタイミングで、ログアウトしていないのは、
代替のログイン手段を持っているため問題無いという認識。
- ☆サインアップしていない場合に、外部ログインの削除ができなかった。
(削除によりログイン手段を持たない状態になるのに、ログインしている状態になってしまうため)
試しに外部ログイン✕2の状態でテストした所、外部ログインの削除が可能であることを確認できた。
- OAuth 2.0 の Bearer Token による認証・認可の仕組みを使用する。
- 詳しくはコチラを参照。
他サイトとの連携機能 †
.NET †
ASP.NET Identityを使用して連携できる(データストアは共有する)。
その他 †
Web API 認証 (Token 認証) を使用して連携する。