Control Panel Web Releases


Control Panel Web - 1.3.1

This update brings a valuable enhancement, allowing users to enjoy continuous app access by staying logged in during active interactions. Additionally, it introduces minor improvements to email service.

Compatibility

  • GBDS 4.5.6 or later
  • Database: Compatible with the dump found in the release folder

MD5 Checksum: e6a839f496d2d6956b23d0508763e587

Setup:

On server’s config.properties:

email.use.script.python=true
  • Name: email.use.script.python
  • Description: Defines if server should use python script to send e-mails.
  • Type/Range: Boolean
  • Default: false
  • Required: No
email.script.python=/home/griaule/scripts/mail/mail.py
  • Name: email.script.python
  • Description: Defines the current OS location of Python script.
  • Type/Range: String
  • Default: null
  • Required: No
email.python.path=python
  • Name: email.python.path
  • Description: Defines the current OS location of Python script.
  • Type/Range: String
  • Default: python
  • Required: No
session.expirationTime.server = 3600s
  • Name: session.expirationTime.server
  • Description: Sets the maximum duration for user login sessions and session refresh.
  • Type/Range: String
  • Default: 3600s
  • Required: Yes

New Features

[IF-001][BESTW-1720][CNF] Boosted user experience with continuous app access.

This update improved user experience by maintaining seamless app access. Now, users can stay logged in while actively engaging with the application within a specified timeframe, as determined by the session.expirationTime.server variable in config.properties.

To enable this feature, configure the session.expirationTime.server variable using the format <number><unit>, where the unit can be “s” for seconds, “m” for minutes, or “h” for hours. For instance, set it as “3600s” to establish a 1-hour idle period.


Control Panel Web - 1.3.0

This version introduces simultaneous login, forgot password and browser enrollment features.

Compatibility

  • GBDS 4.5.6 or later
  • Database: Compatible with the dump found in the release folder

MD5 Checksum: 89f0ad0af2d644bde0803ac9eaab12d2

Setup:

On sphinx.settings table:

Insert into sphinx.settings (NAME,TYPE,VAL) values ('checkDevice', 'APPS', 'false');
  • Name: checkDevice
  • Description: Enables browser enrollment feature (verifies if current browser is the one allowed previously)
  • Type/Range: Boolean
  • Path: settings table of sphinx.settings
  • Default: false
  • Required: No
Insert into sphinx.settings (NAME,TYPE,VAL) values ('forgotPasswordAllowed', 'APPS', 'false');
  • Name: forgotPasswordAllowed
  • Description: Enables forgot password feature (allows user to reset their password if forgotten)
  • Type/Range: Boolean
  • Path: settings table of sphinx.settings
  • Default: false
  • Required: No

On server’s config.properties:

gbds.etrUser=system
  • Name: gbds.etrUser
  • Description: Should receive the string “system” as value if the server works with keys mismatch exceptions. It’ll synchronize these types of exceptions after restarting or polling ETR server.
  • Type/Range: String
  • Default: null
  • Required: Yes
codeValidTime=10
  • Name: codeValidTime
  • Description: Maximum duration that the temporary code sent by e-mail is valid for forgot password and browser enrollment flows. The duration is represented in minutes and it’s validated only once, when server starts.
  • Type/Range: Integer
  • Default: 10
  • Required: No
deviceTime=6
  • Name: deviceTime
  • Description: Represents the period of months that a browser’s guid will be valid.
  • Type/Range: Integer
  • Default: 6
  • Required: No
email.host=null
  • Name: email.host
  • Description: E-mail server URL.
  • Type/Range: String (e.g smtp.gmail.com)
  • Default: null
  • Required: Yes
email.host.port=null
  • Name: email.host.port
  • Description: E-mail server port.
  • Type/Range: Integer (e.g 587)
  • Default: null
  • Required: Yes
email.from=null
  • Name: email.from
  • Description: E-mail address that will be used as sender.
  • Type/Range: String (e.g bravonotifier@gmail.com)
  • Default: null
  • Required: Yes
email.password=null
  • Name: email.password
  • Description: Encrypted sender e-mail address password.
  • Type/Range: String (e.g xed3HZAA3+7umD+YFUgz6/AXbqGnMY/oLSRu6355xdA=)
  • Default: null
  • Required: Yes
  • Observation: The encryption method should be the same used for database’s passwordjava -jar encrypt.jar PASSWORD_HERE
ldap.user=null
  • Name: ldap.user
  • Description: User to be used in LDAP service.
  • Type/Range: String (e.g bravoadm)
  • Default: null
  • Required: Yes
ldap.password=null
  • Name: ldap.user
  • Description: LDAP service user’s password.
  • Type/Range: String (e.g Griaule.123)
  • Default: null
  • Required: Yes

New Features

[NF-001][WEB-358][CNF][OPT] Simultaneous login.

With this feature it’s not possible to have the same profile logged more than once in the same application. If an user is already logged and another access happens, using its username and password, the user with the oldest access will be warned and logged out in their next action.

[NF-002][BESTW-1641][CNF][OPT] Forgot password.

Users now have a new option at login screen that they can reset their password if it was forgotten. After clicking on it, they must inform their username and they will receive an e-mail with a temporary code. After typing the code successfully, they can type a new password, following the rules described in the screen.

[NF-003][BESTW-1663][CNF][OPT] Browser enrollment.

Users now will be informed that they are attempting to access the application from a new browser if they change the browser they are accessing it. They must return to the previous browser or authenticate the new one, revoking the access from the previous browser. To authenticate the new browser, they must type a code received in their e-mail correctly.

Improvements

[IP-001][CNF][CHG] The maximum number of login attempts is now based in a database value.

Previously the maximum number of login attempts was fixed in 5. Now it uses the value from a database row. If the value does not exist, the fallback will be the previous value (5 attempts).


Control Panel Web - 1.2.0

Compatibility updates to handle fields changed on the database schemas.

Compatibility

  • GBDS 4.0.0 or later
  • Database: Compatible with the dump found in the release folder

New tables:

  • sphinx.activity_log
  • sphinx.session

MD5 Checksum: 51596d3d9b84172d2c7c32e27e7b3e00


Control Panel Web - 1.1.0

Compatibility updates to handle fields database schemas changes

Compatibility

  • GBDS 4.0.0 or later
  • Database: Compatible with the dump found in the release folder

MD5 Checksum: e7d1af8300dfd9da041eb672c2262faf

Improvements

  • [IP-001] Server updates to handle new fields schema on common servers


Control Panel Web - 1.0.1

Control Panel Web improvements

Compatibility

  • GBDS 3.30 or later
  • Database: Compatible with the dump found in the release folder

MD5 Checksum: 2e18667f79aa1acdc8b9bcd51577263c

Improvements

  • [IP-001] Improvement on the loading experience on Settings and History screen
  • [IP-002] Inputs are larger now and the setting’s name is now fully displayed
  • [IP-003] Removed input arrows when it was a numerical input

Bug Fixes

  • [BF-001] Fixing infinite fetching while using keybpoard arrows to change compared version and adding axios token to cancel old requests


Control Panel Web - 1.0.0

First release as a Web Product

Compatibility

  • GBDS 3.30 or later
  • Database: Compatible with the dump found in the release folder

MD5 Checksum: 64e7de89a10e453653faa450eda39fc0

New Features

[NF-001][CP-144] Model database

[NF-002][CP-145] Model API to communicate with GBDS and save changes to database

[NF-003][CP-151] Visualize only GBDS on the sidebar

[NF-004][CP-152] Desabling routes that are not from GBDS

[NF-005][CP-153] Removing summary from GBDS

[NF-006][CP-154] Visualize, edit and save configurations of GBDS

[NF-007][CP-155] List configuration history by version with comparison between versions

[NF-008][CP-155] Being able to restore a version, creating a new one