new User()
ユーザオブジェクトを生成する。
生成しただけの状態では、まだサーバには登録されていない。ユーザ登録は User#register で実施する。
Returns:
新規ユーザオブジェクトのインスタンス
- Type
- Object
Example
var user = new Nebula.User();
Members
-
_id :String
-
ユーザID
Type:
- String
-
clientCertUser :boolean
-
クライアント証明書認証ユーザの場合は true
(ブラウザ、またはNode.jsのみ対応)Type:
- boolean
-
createdAt :String
-
作成日時
Type:
- String
-
email :String
-
E-mail アドレス
Type:
- String
-
etag :String
-
ETag
Type:
- String
-
expire :String
-
セッショントークン有効期限(unix time [秒])
Type:
- String
-
federated :boolean
-
外部認証連携有りの場合は true
(ブラウザ、またはNode.jsのみ対応)Type:
- boolean
- Default Value:
-
- false
-
groups :Array.<String>
-
所属グループ一覧 (read only)
Type:
- Array.<String>
-
lastLoginAt :String
-
最終ログイン日時
Type:
- String
-
options :Object
-
オプション (JSON)
Type:
- Object
-
password :String
-
パスワード
Type:
- String
-
primaryLinkedUserId :String
-
プライマリリンクユーザID
OpenID Connect認証でユーザ自動生成時のリンクユーザID
(ブラウザ、またはNode.jsのみ対応)Type:
- String
- Default Value:
-
- null
-
sessionToken :String
-
セッショントークン
Type:
- String
-
updatedAt :String
-
更新日時
Type:
- String
-
username :String
-
ユーザ名
Type:
- String
Methods
-
<static> current(callbacks)
-
カレントユーザ取得
・カレント(ログイン中)のユーザを取得する。
・本情報はクライアントにキャッシュされている情報のため、サーバの最新情報とは一致しない場合がある。Parameters:
Name Type Description callbacks
Callbacks 応答コールバック (Deprecated)
・callbacks は、成功時と失敗時の応答コールバックを指定する。 callbacks 引数は後方互換性維持のためにのみ存在するので、通常指定する必要はない。 { success : function(user) { // 成功時の処理 }, error : function(error) { // 失敗時の処理 } } ・処理が成功した場合、success コールバックを呼び出す。引数は、返り値と同じ。 ・本 API は失敗することはないため、error が呼ばれることはない。
Returns:
ユーザオブジェクトのインスタンス。カレントユーザが存在しない場合は null が返る。
返り値に設定されるプロパティは以下のとおり。
- _id : ユーザID
- sessionToken : セッショントークン
- expire : セッショントークン有効期限 (unix time [秒])
- username : ユーザ名
- email : E-mailアドレス
- options : オプション
- groups : 所属グループ一覧
- Type
- User
-
<static> delete()
-
ユーザ削除 (Deprecated)
本APIは Deprecated である。User.removeを使用すること。
- Deprecated:
-
- since v4.0.1
-
<static> deleteAccountLink(user, linkedUserId, callbacks)
-
OpenID Connectリンク情報削除
・ユーザに設定された OpenID Connect リンク情報を削除する。
・本 API はオフラインモードでは使用できない。Parameters:
Name Type Description user
Object リンク情報削除するユーザオブジェクトのインスタンス。
null は指定できない。
リンク情報削除に必要なインスタンスのプロパティは、以下の通り。- _id : リンク情報削除するユーザのID
カレントユーザ以外のリンク情報を削除する場合は、SDK 初期化時のアプリケーションキーにアプリケーションのマスターキーを指定すること。
linkedUserId
string 削除するリンクユーザID。
null は指定できない。
user の primaryLinkedUserId と一致した場合は、例外をスローする。callbacks
Callbacks 応答コールバック
・処理が成功した場合、success の呼び出しにて通知する。 success の引数は無し。
- Since:
-
- v6.5.0
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
<static> getAccountLinks(user, callbacks)
-
OpenID Connectリンク情報取得
・ユーザに設定された OpenID Connect リンク情報を取得する。
・本 API はオフラインモードでは使用できない。Parameters:
Name Type Description user
Object リンク情報取得するユーザオブジェクトのインスタンス。
null は指定できない。
リンク情報取得に必要なインスタンスのプロパティは、以下の通り。- _id : リンク情報取得するユーザのID
カレントユーザ以外のリンク情報を取得する場合は、SDK 初期化時のアプリケーションキーにアプリケーションのマスターキーを指定すること。
callbacks
Callbacks 応答コールバック
・処理が成功した場合、success の呼び出しにて通知する。 success の書式は以下の通りとする。 success(links) links : リンク情報 (Nebula.AccountLink インスタンス) の配列 リンク情報が存在しない場合は、空が返る。
- Since:
-
- v6.5.0
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
<static> login(userInfo, callbacks)
-
ログイン
Parameters:
Name Type Description userInfo
Object ユーザ情報。 JSON 形式で指定する。null は指定できない。
{ "email" : "foo@example.com", "password" : "passwOrd" }
{ "token" : "TOKEN" }
- email : E-mailアドレス(※)
- username : ユーザ名(※)
- token : ワンタイムトークン(※)
- password : パスワード(E-mailアドレス、ユーザ名指定時は必須)
callbacks
Callbacks 応答コールバック
・処理が成功した場合、success の呼び出しにて通知する。 success の書式は以下の通りとする。 success(user) user : ログインしたユーザオブジェクトのインスタンス 処理の成功により、以下のユーザオブジェクトのプロパティが格納される (プロパティ名) _id : ログインしたユーザのID sessionToken : セッショントークン expire : ログインの有効期限 (unix time [秒]) (以下の情報はオフライン機能無効時のみ取得可) username : ユーザ名 email : E-mail options : オプション情報(JSON) groups : ユーザが所属するグループ名の配列 createdAt : ユーザの作成日時 updatedAt : ユーザの更新日時 lastLoginAt : ユーザの最終ログイン日時 etag : ETag federated : 外部認証連携有無 primaryLinkedUserId : プライマリリンクユーザID
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
<static> logout(callbacks)
-
ログアウト
Parameters:
Name Type Description callbacks
Callbacks 応答コールバック
・処理が成功した場合、success の呼び出しにて通知する。 success の書式は以下の通りとする。 success()
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
<static> query(conditions, callbacks)
-
ユーザ検索
Parameters:
Name Type Description conditions
Object 検索条件。
JSON 形式で指定する。省略した場合は全件検索となる。 検索用プロパティは以下の通り。
- _id : ユーザのID(※)
- email : E-mailアドレス(※)
- username : ユーザ名(※)
- skip : スキップカウント
- limit : 件数上限(0は無制限、デフォルトは100)
- countQuery : 全件検索時に全件数をカウントする場合は true (デフォルトは false)
callbacks
Callbacks 応答コールバック
・処理が成功した場合、success の呼び出しにて通知する。 conditions.countQuery が false の場合、success の書式は以下の通りとなる。 success(users) users : 取得したユーザオブジェクトインスタンスの配列 処理の成功により、配列毎に以下のユーザオブジェクトのプロパティが更新される (プロパティ名) username : ユーザ名 email : E-mailアドレス options : オプション groups : 所属グループ一覧 (注: '_id' を指定して検索した場合のみ。オフライン機能有効時は無効。) createdAt : ユーザ登録日付 updatedAt : 最終更新日付 lastLoginAt : 最終ログイン日時(マスターキー使用時のみ) etag : ETag federated : 外部認証連携有無 primaryLinkedUserId : プライマリリンクユーザID conditions.countQuery が true の場合、success の書式は以下の通りとなる。 success(json) json.users : 取得したユーザオブジェクトインスタンスの配列。内容は上記 users と同じ。 json.count : 全件数
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
<static> queryCurrent(callbacks)
-
カレントユーザ取得(サーバ問合せ)
・カレント(ログイン中)のユーザを取得する。サーバへの問い合わせが発生する。
Parameters:
Name Type Description callbacks
Callbacks 応答コールバック
・処理が成功した場合、success の呼び出しにて通知する。 success の書式は以下の通りとする。 success(user) user : ユーザオブジェクトのインスタンス。 カレントユーザが存在しない場合は、null が返る。 user に設定されるプロパティは以下のとおり。 (プロパティ名) _id : ユーザID username : ユーザ名 email : E-mailアドレス options : オプション groups : 所属グループ一覧 (注: '_id' を指定して検索した場合のみ。オフライン機能有効時は無効。) createdAt : ユーザ登録日時 updatedAt : 最終更新日時 lastLoginAt : 最終ログイン日時 etag : ETag federated : 外部認証連携有無 primaryLinkedUserId : プライマリリンクユーザID
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
<static> remove(user, callbacks)
-
ユーザを削除する。
Parameters:
Name Type Description user
Object 削除するユーザオブジェクトのインスタンス。 user にnull は指定できない。 ユーザ削除に必要なインスタンスのプロパティは、以下の通り。
- _id : 更新するユーザのID
カレントユーザ以外を削除する場合は、SDK 初期化時のアプリケーションキーにアプリケーションのマスターキーを指定すること。
callbacks
Callbacks 応答コールバック
・処理が成功した場合、success の呼び出しにて通知する。 success の書式は以下の通りとする。 success()
- Since:
-
- v4.0.1
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
<static> resetPassword(userInfo, callbacks)
-
ユーザパスワードリセット
・ユーザパスワードのリセットを行う。
・ユーザパスワードのリセットは一定の時間内にリクエストできる回数に制限がある。Parameters:
Name Type Description userInfo
Object ユーザ情報。 JSON 形式で指定する。null は指定できない。 以下いずれかのプロパティを指定すること。
- email : E-mailアドレス
- username : ユーザ名
callbacks
Callbacks 応答コールバック
・処理が成功した場合、success の呼び出しにて通知する。 success の書式は以下の通りとする。 success()
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
<static> saveCurrent(userInfo)
-
カレントユーザ強制設定
・カレント(ログイン中)のユーザを強制設定する。
・すでにカレントユーザが存在する(ログイン中)の場合は、指定したプロパティだけが上書きされる。
・本情報はクライアントにキャッシュされる。
・本 API はオフラインモードでは使用できない。
・本 API は通常のアプリケーションで使用するべきものではない。Parameters:
Name Type Description userInfo
Object ユーザ情報(JSON)。null を指定した場合は、カレントユーザを削除する。
userInfo の書式は以下の通りとする。 指定したプロパティだけが上書き設定される。
- _id : ユーザID
- sessionToken : セッショントークン
- expire : セッショントークン有効期限 (unix time [秒])
- username : ユーザ名
- email : E-mailアドレス
- options : オプション
- groups : 所属グループ一覧
-
<static> update(user, callbacks)
-
ユーザ情報更新
Parameters:
Name Type Description user
User 更新するユーザオブジェクトのインスタンス。
user にnull は指定できない。 更新に必要なインスタンスのプロパティは、以下の通り。
- _id : 更新するユーザのID(※)
- email : 更新するE-mailアドレス(オプション)
- password : 更新するパスワード(オプション)
- username : 更新するユーザ名(オプション)
- options : オプション(オプション) optionsには、JSON形式で記述された任意のオブジェクトを指定できる。
カレントユーザ以外を更新する場合は、SDK 初期化時のアプリケーションキーにアプリケーションのマスターキーを指定すること。
callbacks
Callbacks 応答コールバック
・処理が成功した場合、success の呼び出しにて通知する。 success の書式は以下の通りとする。 success(user) user : 更新したユーザオブジェクトのインスタンス 処理の成功により、以下のユーザオブジェクトのプロパティが更新される (プロパティ名) username : 更新されたユーザ名 email : 更新されたE-mailアドレス updatedAt : 最終更新日付
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
get(property)
-
ユーザプロパティ取得 (Deprecated)
・ユーザオブジェクトのプロパティを取得する。
・取得可能なプロパティの詳細は、各メソッドの説明を参照のこと。
・本メソッドは deprecated である。各フィールドの getter を直接使用すること。Parameters:
Name Type Description property
String プロパティ名。 指定可能なプロパティ名は以下のとおり(APIによって取得可能なプロパティは異なる)。
- _id : ユーザID
- username: ユーザ名
- email: E-mailアドレス
- password: パスワード
- options: オプション情報 (JSON)
- groups: 所属グループ一覧 (配列)
- createdAt: ユーザ登録日時
- updatedAt: ユーザ更新日時
- sessionToken: セッショントークン
- expire: セッショントークン有効期限(unix time [秒])
- clientCertUser: クライアント証明書ユーザ (ブラウザ、またはNode.jsのみ対応)
- federated: 外部認証連携有無
- primaryLinkedUserId: プライマリリンクユーザID
- Deprecated:
-
- Yes
Returns:
value プロパティ値
- Type
- String
-
register(callbacks)
-
ユーザを登録する。
ユーザ登録に必要なユーザプロパティは、以下の通り。
- email : E-mailアドレス(必須)
- password : パスワード(必須)
- username : ユーザ名(オプション)
- options : オプション(オプション)。JSON形式で記述された任意のオブジェクトを指定できる。
- username : ユーザ名(必須)
- clientCertUser : クライアント証明書ユーザ trueを設定すること(必須)
- options : オプション(オプション) optionsには、JSON形式で記述された任意のオブジェクトを指定できる。
Parameters:
Name Type Description callbacks
Callbacks 応答コールバック。
処理が成功した場合、success の呼び出しにて通知する。 なお、処理が成功した状態ではまだログインは実施していない。 引数は以下の通り。
user : ユーザオブジェクトのインスタンス 処理の成功により、以下のユーザオブジェクトのプロパティが追加格納される (プロパティ名) _id : 登録したユーザのID createdAt : 登録日付 updatedAt : 最終更新日付
Returns:
callbacksを指定しなかった場合、Promiseオブジェクトを返す。callback指定時は返り値なし(undefined)。
- Type
- Promise
-
set(property, value)
-
ユーザプロパティ設定 (Deprecated)
・ユーザオブジェクトのプロパティを設定する。
・設定可能なプロパティの詳細は、各メソッドの説明を参照のこと。
・本メソッドは deprecated である。各フィールドの setter を直接使用すること。Parameters:
Name Type Description property
String プロパティ名。 指定可能なプロパティ名は以下のとおり。
- _id : ユーザID
- username: ユーザ名
- email: E-mailアドレス
- password: パスワード
- options: オプション情報 (JSON)
- createdAt: ユーザ登録日時
- updatedAt: ユーザ更新日時
- sessionToken: セッショントークン
- expire: セッショントークン有効期限(unix time [秒])
- clientCertUser: クライアント証明書ユーザ (ブラウザ、またはNode.jsのみ対応)
- federated: 外部認証連携有無
- primaryLinkedUserId: プライマリリンクユーザID
value
String プロパティ値
- Deprecated:
-
- Yes
Returns:
this
- Type
- User