Auth モジュールは、ユーザ管理、グループ管理、ユーザ登録、ログイン、および関連する機能を含む、アプリケーションの認証と認可を提供します。プロジェクト作成時に自動的にインストールされます。

デフォルトの管理者ユーザーログインとパスワードは次のとおりです。
- Login: [email protected]
- Password:appmaster
モジュールの設定は、以下の方法で行うことができます。
- SignUp Groups: : ユーザーが登録できるグループのリストを定義します。
- SignUp: : ユーザーがアプリケーションにサインアップし、アカウントを取得できるようにします。
- Session timeout (minutes): : ユーザがアイドル状態の場合に、現在のユーザセッションを終了する時間を定義します : デフォルトは60分です。
- Failed login delay (in ms): ログインに失敗した際の応答の遅延時間を定義します; デフォルトは0msです。
- Email confirmation required: ユーザが電子メールで登録を確認する必要があるかどうかを定義します。
- Signed-Up User Active: 有効な場合、新しく作成されたUserオブジェクトに対してactive=trueを設定します。
- Groups タブでユーザグループのリストを作成し、設定することができます。

User そして User Session モデルは、 Auth モジュールがインストールされると、自動的に作成されます。これらは Data Design タブで確認できます。これらのモデルのデフォルトの属性を設定することはできませんが、新しい属性を追加することは可能です。

User, User Session と 関連BPAuth Module
に関連するプリインストールされたビジネスプロセス User と User Session モデルに関するプリインストールされたビジネスプロセスは以下のとおりです。
-
User モデル
- DB: Delete User: User オブジェクトをデータベースから削除します。 ID;

- DB: Update User: データベース内の指定されたモデルオブジェクトのすべてのフィールドをリセットし、指定された値でそれらを更新します ( DB: Patch User は提供されたフィールドのみを変更し、他のフィールドをそのまま保持するために使われなければなりません)。

- DB: Create User: データベースにレコードを作成し、User モデルオブジェクトを返します (モデルオブジェクトを作成するために Make User ブロックを使って User モデルオブジェクトを作成するブロックが必要です)。

- DB: Soft Delete User: 選択された DeletedAt 選択された User のようにレコード全体を削除するのではなく、選択されたモデルオブジェクトのフィールドを更新します。 DB: Delete User のようにレコード全体を削除するのではなく、選択されたモデルオブジェクトのフィールドを更新します。

- DB: Bulk Delete User: 与えられたモデルオブジェクトのレコードのセットを一括して削除する User を持つモデルオブジェクトのレコードを一括して削除します。 IDs( ids 配列) を持つモデルオブジェクトレコードのセットを一括削除します。 failed_ids- 削除されないユーザーの配列 IDs の配列で、削除されません。

- DB: Patch User: モデルオブジェクトの選択されたフィールドを更新します。 User モデルオブジェクトの選択されたフィールドをデータベースで更新します ( DB: Update User はすべてのフィールドをリセットするために使わなければなりません)。

- DB: Search User: フィールドに基づいてデータベース内の1つもしくは複数の User モデルオブジェクトのフィールドをもとにデータベースから1つもしくは複数のモデルオブジェクトを見つけ、それらを返します。

- DB: GetOne User: そのフィールドに基づいて User モデルオブジェクトをその ID に基づいてモデルオブジェクトを見つけ、それを返します。

- Expand User: 選択されたモデルオブジェクトのすべてのフィールドを返します。 User モデルオブジェクトのすべてのフィールドを返す。

- Make User 入力フィールドに基づいて User 入力フィールドに基づくモデルオブジェクトを作る (データベースにレコードを作るためには DB: Create User を使う必要があります)。

-
User Session
- DB: Delete User Session オブジェクトをデータベースから削除する User Session オブジェクトをデータベースから削除する。 ID;

- DB: Update User Session: データベース内の指定されたモデルオブジェクトのすべてのフィールドをリセットし、指定された値でそれらを更新する ( DB: Patch User Session は提供されたフィールドを変更するためにのみ使われます)。

- DB: Create User Session: データベースにレコードを作成し、モデルオブジェクトを返します。 User Session モデルオブジェクトを返します (これは Make User Session ブロックを使って User モデルオブジェクトを返す(入力フィールドに従ってモデルオブジェクトを作成するブロックが必要)。

- DB: Soft Delete User Session: 選択されたフィールドの DeletedAt 選択された User Session モデルオブジェクトのフィールドを更新する。

- DB: Bulk Delete User Session: 指定されたモデルオブジェクトのレコードのセットを一括削除する User Session モデルオブジェクトのレコードを一括削除します。 IDs( ids 配列) を持つモデルオブジェクトのレコードのセットを一括して削除します。 failed_ids の集合を定義します。 IDs のセットを定義し、それらは削除処理から無視されます。

- DB: Patch User Session: モデルオブジェクトの選択されたフィールドを更新します。 User Session モデルオブジェクトの選択されたフィールドをデータベースで更新します ( DB: Update User Session はすべてのフィールドをリセットするために使わなければなりません)。

- DB: Search User Session: フィールドに基づいてデータベース内の1つもしくは複数の User Session モデルオブジェクトを見つけ、それらを返します。

- DB: GetOne User Session: そのフィールドに基づいて User Session モデルオブジェクトをその ID に基づいてモデルオブジェクトを見つけ、それを返します。

- Expand User Session: 選択されたモデルオブジェクトのすべてのフィールドを返します。 User Session モデルオブジェクトのすべてのフィールドを返す。

- Make User Session 入力フィールドに基づいて User Session 入力フィールドに基づくモデルオブジェクトを作る (データベースにレコードを作るためには DB: Create User Session を使う必要があります)。

-
Auth Module
- Auth: Generate Auth Token: 与えられた長さの認可トークン( Auth Token)を生成する。

- Auth: Registration: 新しいユーザーを登録する。

- Auth: Authorization が存在するかどうかを調べ,それに関連するユーザーを返す. Auth Token が存在するかどうかを調べ、それに関連するユーザを返します。

- Auth: Authentification ユーザのログイン名とパスワードをチェックし、そのユーザを返します。 Auth Token;

- Auth: Logout に基づいて,現在のユーザのセッションを終了させる. Auth Token;

- Auth: Get current user: 現在の User モデルオブジェクトを返す.

- Auth: Remove user from group: 選択されたグループからユーザーを削除します. ID;

- Auth: Add user to group: 選択されたグループにユーザーを追加します。 ID;

- Auth: Hash Password パスワードの文字列をハッシュに変換する。

- Auth: Restore Password: ユーザーのログインに基づき、パスワードを復元する。

- Auth: Change Password: ユーザーのパスワードを変更する。

- Auth: Probe Password: パスワードとハッシュの関連性をチェックする.

Auth Module, User とUser Session endpoints
プリインストールされている Endpoints の Auth Module と User と User Session のモデルは、プロジェクトが作成されると自動的に生成されます。
Auth Module
リクエストタイプEndpoint関連するビジネスプロセス
_/logout/Auth: Logout
/auth/Auth: Authentification
/register/Auth: Registration
/confirm/Auth: Get Current User
/user/change-password/Auth: Change Password
/user/restore-password/Auth: Restore Password
/user/profile/_Auth: Get Current User
ユーザー
リクエストタイプEndpoint関連する業務プロセス
_/user/:id/DB: Update User
/user/:id/DB: Delete User
/user/:id/DB: GetOne User
/user/DB: Search User
/user/:id/DB: Patch User
/user/_DB: Create User
User Session
リクエストタイプEndpoint関連する業務プロセス
_/user-session/:id/DB: Delete User Session
/user-session/:id/DB: GetOne User Session
/user-session/DB: Search User Session
/user-session/:id/DB: Patch User Session
/user-session/DB: Create User Session
/user-session/:id/_DB: Update User Session
Auth Token
Auth Token は認可されたユーザーのセッション・トークンとして使用されます。とのやりとりが可能です。 Auth Token, Webアプリケーションのビジネスプロセスにおいて
- Get Auth Token 現在のユーザのセッションを返します Auth Token;

- Set Auth Token 現在のユーザのセッションを書き換える Auth Token;

- Remove Auth Token 現在のユーザのセッションを削除する Auth Token;

カレントユーザーの取得方法
1.に移動します。 Business logic タブに移動し Auth: Get current user ブロックをドラッグします。

2.2. Endpoints タブを開き User セクションを展開します。次に、手順1で作成したビジネスプロセスの GET タイプ・メソッドを作成します。endpoint URLは次のようになります。 /user_current.

3.3. Web Apps タブに移動し、新しいビジネス・プロセスを作成します。 Server request GET /user_current を使用して、Web アプリケーション・ビジネス・プロセスから現在のユーザを取得します。

