Open棟梁 wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

汎用認証サイト(Multi-purpose Authentication Site)の独自仕様部分について説明する。

Idp仕様

概要

Idpの仕様については概ね、ASP.NET Identityに準拠。

ASP.NET Identity側の仕様については、「ASP.NET Identity」を参照。

カスタマイズ・ポイント

以下のスイッチで大きな動作変更が可能。

詳しくは「汎用認証サイトのコンフィギュレーション」を参照のこと。

Multi-tenantスイッチ

RequireUniqueEmailスイッチ

以下のように、主にサインアップ・プロセスに影響を与える。

の動作にも影響を与える。

利用するサービス

外部ログイン

オンライン決済サービス

通知プロバイダ

ユーザ・アカウント

主要属性

永続化

スキーマ

DDL

https://github.com/OpenTouryoProject/MultiPurposeAuthSite/tree/develop/root/files/resource/Sql

編集処理

サインアップ・サインイン

サインアップとE-mailアドレス確認

UserName? = E-mailアドレス の場合、

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

アカウント編集

ユーザ名

パスワード

E-mailアドレス

電話番号

2要素認証(2FA)

外部ログイン

外部ログインの一覧表示と追加・削除

オンライン決済サービス

属性データ(非定型データ)

OAuth2データ

ユーザ毎に、

のデータを設定し、

OAuth2アクセストークンを取得可能。

運用系機能

パスワード・リセット

セキュリティ強化機能

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

指定回数、ログインをミスすると、指定時間ロックアウトされる。

SecurityStamp?

2要素認証

外部ログイン仕様

概要

概ね、ASP.NET Identityに準拠。

カスタマイズ・ポイント

外部ログイン処理の仕様について。

外部ログイン設定

外部ログインと、外部ログイン・サービスを設定する。

外部ログインでサインアップ

サインアップを外部ログインで行った場合、

外部ログインでサインイン

外部ログインの一覧と削除

外部ログインの詳細

ExternalLoginCallback?の条件分岐

OAuth 2.0 Server仕様

概要

概ね、ASP.NET Identityに準拠。

については、「ASP.NET IdentityによるSTS実装」を参照。

Access Token

オプション

以下の動作を設定可能。

フォーマット

Server側

AuthorizationServer?

ResourceServer?

Client側

スターターのパラメタ

ResourceServer?のWeb APIへのアクセス

認証

https://techinfoofmicrosofttech.osscons.jp/index.php?OAuth#wdad8a4e

クライアント認証

ここでの"クライアント"とは、"ユーザ"の事ではなく、
OAuth 2.0 のClientを指しているので注意する。

ユーザ認証

OpenID Connect Server仕様

を、

に拡張している。

管理機能

管理者アカウント

(管理者アカウントで)サインインして管理操作を実行できる。

マルチテナント化している場合

でのみ操作可能。

マルチテナント化していない場合

システム管理者アカウント

でのみ操作可能。

オブジェクトの所有権

ユーザ・ロールの所有権は、マルチテナント・モードで重要になる。

マルチテナント化している場合

マルチテナント化していない場合

ユーザ・ロール編集処理

管理画面についての詳細はこちら

所有権

所有権の無いオブジェクトに対する操作ができないことを確認する。

例外

所有者はCRUD可能、非所有者はCRUD不可能の例外。

エラーメッセージ

表示元

ASP.NET MVCのModel Bindingの検証機能によるもの。

ASP.NET Identityによるもの。

サーバー・サイド実装によるもの。

表示先

ASP.NET MVCのModel Bindingの検証機能によるもの。

ASP.NET Identityによるもの。

サーバー・サイドのチェック結果が、サマリ領域(Html.ValidationSummary?)に表示される。
例 : https://github.com/OpenTouryoProject/MultiPurposeAuthSite/blob/develop/root/programs/MultiPurposeAuthSite/MultiPurposeAuthSite/Views/Account/Register.cshtml#L45

@Html.ValidationSummary("", new { @class = "text-danger" })

サーバー・サイド実装によるもの。

サーバー・サイドのチェック結果が、サマリ領域(Html.ValidationSummary?)に表示される。
例 : https://github.com/OpenTouryoProject/MultiPurposeAuthSite/blob/develop/root/programs/MultiPurposeAuthSite/MultiPurposeAuthSite/Views/Account/Register.cshtml#L45

@Html.ValidationSummary("", new { @class = "text-danger" })

パラメタ化

使用するパラメタについて、コチラに纏めた。


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