> For the complete documentation index, see [llms.txt](https://tech.x2bee.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://tech.x2bee.com/api-guide/api-guides-en/back-office/system-bo/personal-management.md).

# Personal Management

Users can conveniently manage favorites and securely change their passwords, while system administrators can strengthen security through login history.

## Key Features

* **Favorites List Management**
  * Effectively manages the user's favorites list in the admin system.
* **Password Change**
  * Users can change their own password, thereby strengthening security.
* **Login/Logout History Management**
  * Creates and manages user login and logout history in the admin system.
  * Strengthens security by checking login-related validity.

***

## Process Definition — Favorites Management and Password Change

Manages the admin system user's favorites list and password changes.

<figure><img src="https://2999922013-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXTxKSWMmuxEkop1pvuwe%2Fuploads%2FmaJ3aws4GTgXtYePCi2g%2Fimage-20231221-073538.png?alt=media&#x26;token=e2095395-9359-4a0f-becb-4492b4aa42d2" alt=""><figcaption></figcaption></figure>

{% stepper %}
{% step %}

### Favorites Group List Lookup

Looks up the list and count of favorites registered by the user.
{% endstep %}

{% step %}

### Favorites Group List Modification/Deletion

Modifies or deletes the user's favorites list.
{% endstep %}

{% step %}

### Existing Password Match Check

Performs validity checks for a password change.

* If the new password matches the existing password, the change is not allowed.
* If the new password matches a recently used password, the change is not allowed.
  {% endstep %}

{% step %}

### Password Change

Processes the password change if the validity check passes.
{% endstep %}
{% endstepper %}

***

## Process Definition — Admin System Access Management

You can log in to and log out of the admin system.

<figure><img src="https://2999922013-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXTxKSWMmuxEkop1pvuwe%2Fuploads%2FahhuwezUll2QTbINjlSL%2F%E1%84%80%E1%85%AA%E1%86%AB%E1%84%85%E1%85%B5%E1%84%8C%E1%85%A1.png?alt=media&#x26;token=de45fa0d-5641-4a43-a2bb-1ae828ea640b" alt=""><figcaption></figcaption></figure>

{% stepper %}
{% step %}

### ID Lookup

If the last usage date exceeds 3 months, the ID is locked.

Looks up the user account that exists with the ID and password entered at login.

Performs a validity check on the retrieved user account.
{% endstep %}

{% step %}

### Increment Account Password Failure Count Processing

If no user account exists matching the ID and password, increments the ID's password failure count.
{% endstep %}

{% step %}

### Create Login History

Creates login history for the user account.
{% endstep %}

{% step %}

### Reset Account Password Failure Count Processing

Resets the password failure count to 0 upon successful login.
{% endstep %}

{% step %}

### Password Change

If more than 3 months have passed since the user account (retrieved by ID/password) last changed its password, moves to the password change popup.

* When changing the password, checks whether the new password matches a recent password or the current password.
  {% endstep %}

{% step %}

### Password Reset

You can reset your password from the admin system main screen.

* During reset, verifies the user is valid using the entered ID and mobile phone number.
* After reset, sends the reset password via AlimTalk.
* Creates a password change history record.
  {% endstep %}

{% step %}

### Create Logout History

Creates logout history when logging out.
{% endstep %}
{% endstepper %}

***

## API Function List — Favorites Management

<table><thead><tr><th width="142.3333740234375">API</th><th width="302.111083984375">Description</th><th width="93.5555419921875">Server</th><th width="92.4444580078125">Method</th><th>Notes</th></tr></thead><tbody><tr><td>Favorites Group List Count Lookup</td><td>Looks up the count of the user's favorites group list.</td><td>BO</td><td>GET</td><td><a href="https://apibo.x2bee.com/content?bo=system&#x26;depth=%EC%A6%90%EA%B2%A8%EC%B0%BE%EA%B8%B0%20%EA%B4%80%EB%A6%AC&#x26;path=getUserFavoriteMenuListCount">🔗View API ></a></td></tr><tr><td>Favorites Group List Lookup</td><td>Looks up the user's favorites list.</td><td>BO</td><td>GET</td><td><a href="https://apibo.x2bee.com/content?bo=system&#x26;depth=%EC%A6%90%EA%B2%A8%EC%B0%BE%EA%B8%B0%20%EA%B4%80%EB%A6%AC&#x26;path=getUserFavoriteMenuList">🔗View API ></a></td></tr><tr><td>Favorites Group List Modification/Deletion</td><td>Modifies or deletes the user's favorites list.</td><td>BO</td><td>POST</td><td><a href="https://apibo.x2bee.com/content?bo=system&#x26;depth=%EC%A6%90%EA%B2%A8%EC%B0%BE%EA%B8%B0%20%EA%B4%80%EB%A6%AC&#x26;path=saveUserFavoriteMenu">🔗View API ></a></td></tr></tbody></table>

***

## API Function List — Password Change

<table><thead><tr><th width="100.111083984375">API</th><th width="254.3333740234375">Description</th><th width="92.111083984375" align="center">Server</th><th width="94.4443359375" align="center">Method</th><th>Notes</th></tr></thead><tbody><tr><td>Password Change</td><td>Changes the user password.</td><td align="center">BO</td><td align="center">POST</td><td><a href="https://apibo.x2bee.com/content?bo=system&#x26;depth=%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8%20%EB%B3%80%EA%B2%BD&#x26;path=changePassword">🔗View API ></a></td></tr><tr><td>Recent Password Match Check</td><td>Checks whether the new password matches a recent password.</td><td align="center">BO</td><td align="center">GET</td><td><a href="https://apibo.x2bee.com/content?bo=system&#x26;depth=%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8%20%EB%B3%80%EA%B2%BD&#x26;path=checkRecentPassword">🔗View API ></a></td></tr><tr><td>Existing Password Match Check</td><td>Checks whether the new password matches the existing password.</td><td align="center">BO</td><td align="center">GET</td><td><a href="https://apibo.x2bee.com/content?bo=system&#x26;depth=%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8%20%EB%B3%80%EA%B2%BD&#x26;path=checkCurrentPassword">🔗View API ></a></td></tr></tbody></table>

***

## API Function List — Login

<table><thead><tr><th width="147.888916015625">API</th><th width="293.3333740234375">Description</th><th width="93.5556640625" align="center">Server</th><th width="91.3333740234375" align="center">Method</th><th>Notes</th></tr></thead><tbody><tr><td>Create Login History</td><td>Creates login history after login.</td><td align="center">BO</td><td align="center">POST</td><td><a href="http://apibo.x2bee.com/content?bo=system&#x26;depth=%EB%A1%9C%EA%B7%B8%EC%9D%B8&#x26;path=updateStLoginLog">🔗View API ></a></td></tr><tr><td>Create Logout History</td><td>Creates logout history after logout.</td><td align="center">BO</td><td align="center">PUT</td><td><a href="http://apibo.x2bee.com/content?bo=system&#x26;depth=%EB%A1%9C%EA%B7%B8%EC%9D%B8&#x26;path=updateStLoginLog">🔗View API ></a></td></tr><tr><td>Password Reset</td><td>Resets the password.</td><td align="center">BO</td><td align="center">PUT</td><td><a href="http://apibo.x2bee.com/content?bo=system&#x26;depth=%EB%A1%9C%EA%B7%B8%EC%9D%B8&#x26;path=initializePasswordOnLogin">🔗View API ></a></td></tr><tr><td>Password Change</td><td>Changes the password.</td><td align="center">BO</td><td align="center">PUT</td><td><a href="http://apibo.x2bee.com/content?bo=system&#x26;depth=%EB%A1%9C%EA%B7%B8%EC%9D%B8&#x26;path=updatePasswordByPasswordInitialize">🔗View API ></a></td></tr><tr><td>ID Lock Processing</td><td>Locks a user ID.</td><td align="center">BO</td><td align="center">PUT</td><td><a href="http://apibo.x2bee.com/content?bo=system&#x26;depth=%EB%A1%9C%EA%B7%B8%EC%9D%B8&#x26;path=updateIdLockYnCheck">🔗View API ></a></td></tr><tr><td>Account Password<br>Failure Count Reset Processing</td><td>Resets the user password failure count.</td><td align="center">BO</td><td align="center">PUT</td><td><a href="http://apibo.x2bee.com/content?bo=system&#x26;depth=%EB%A1%9C%EA%B7%B8%EC%9D%B8&#x26;path=updateLoginSuccess">🔗View API ></a></td></tr><tr><td>Account Password<br>Failure Count Increment<br>Processing</td><td>Increments the user password failure count.</td><td align="center">BO</td><td align="center">PUT</td><td><a href="http://apibo.x2bee.com/content?bo=system&#x26;depth=%EB%A1%9C%EA%B7%B8%EC%9D%B8&#x26;path=updateLoginFailCntAdd">🔗View API ></a></td></tr><tr><td>Existing ID Lookup</td><td>Looks up whether the ID exists.</td><td align="center">BO</td><td align="center">GET</td><td><a href="http://apibo.x2bee.com/content?bo=system&#x26;depth=%EB%A1%9C%EA%B7%B8%EC%9D%B8&#x26;path=updateLoginFailCntAdd">🔗View API ></a></td></tr></tbody></table>

***

## Other Notes

* Validity checks at login
  * If the account's login failure count exceeds the "loginFailCount" property value in the x2bee-bo project's properties file, login is not allowed
  * If no account is found by ID/password, login is not allowed
  * If the accessing IP is not an allowed IP (i.e., the user's IP address differs from the accessing IP), login is not allowed
  * If the usage start date and usage end date are not satisfied, login is not allowed
  * If the last login was more than 3 months ago, login is not allowed (moves to the password change popup)
  * A locked account cannot log in

***
