Network Keys are bound to the Network ID for the database storing the keys. If the database server name (or database name) changes, the Network ID will also change. Any existing keys bound to the old Network ID are rendered invalid. Organizations planning to move or rename their database server should plan accordingly.
EarthSoft recommends the following:
1.Set up the new server.
2.Request that new keys be issued prior to the actual move. This will prevent any loss of productivity during the transition.
All Network Keys should be managed through the registration form in EQuIS Professional. Attempts to manually modify the contents of ST_LICENSE may result in invalid or corrupt keys. A valid key consists of an APP_ID, KEY_TYPE, and KEY_STRING. The field KEY_TITLE is filled in by the licensed product's proper name upon first use. If the field is null, then this key has never been used and the Software Registration window will display "Unused License" for this key. There is no relational constraint between the ST_LICENSE and ST_LICENSE_USE tables. This allows keys to be deleted without losing usage history.
To manage network licenses, paste the new key strings into the text area of the Network Licenses tab of the Registration Form and click Save Keys. The Registration Form will validate the keys and apply any necessary changes to ST_LICENSE. Keys are processed in order of appearance in the text area. There should be only one key per line.
EQuIS tracks usage history for all products using Network Licenses. This information is saved in the ST_LICENSE_USE table and includes the fields listed below.
•APP_ID is the webkey identifier for the product.
•WORKSTATION is the workstation used to consume the license. It is a concatenation of the computer name environment variable, the CPU ID, the volume serial number of the first hard drive, and the network MAC address.
•USER_NAME is the database login name used when acquiring the license, and reflects the connection type used when first opening EQuIS. For Windows Authentication, the user name is the Windows Login. For SQL Authentication, the name is the Database Management System login name. For application level security, the name is the value of ST_USER.USERNAME from the database the user connected to when starting EQuIS. In the case of a master license server, it could be the credentials used to connect to the license database as stored in another EQuIS Database, ST_LICENSE table.
•LICENSE_CHECKED_OUT is the date and time that the record was created. The time is given in Coordinated Universal Time (UTC).
oFor Professional licenses, this field is populated after five minutes on database query with an expiration date that is approximately 15 minutes in the future. The LICENSE_EXPIRES is set to the current date and time upon successful termination of a session. Values set in the future indicate current leases, while expiration dates in the past represent historical usage data. Since expiration dates are automatically set to 15 minutes in the future, session duration is accurate to within 15 minutes, even in the event of power failure or loss of network.
oFor Enterprise licenses, this field populates with a date expiring 30 years in the future (or until user is disabled or deleted through User Manager Widget).
•CHECKSUM is used to determine if the license use record was modified while the license was checked out.
In order for more than one EQuIS Database to share network licenses, create a connection string that points to the database containing the licenses. Read here for more instructions on applying network licenses.
A valid database connection string must be created to enter into the ST_LICENSE.LICENSE_SERVER field in the secondary database(s). The value for APP_ID must be 1023 and the value for KEY_TYPE must be four. There should be no other records in ST_LICENSE. This connection string must point to the original database (where the network license keys are stored). The connection string must be valid for any user that will be using the network licenses. For complete documentation on creating a connection string, read here and here.
Example connection strings include the following, and are case sensitive.
•SQL Server with Windows Authentication
Data Source=dbserver;Integrated Security=SSPI;Database=licensedb;
•SQL Server with SQL Authentication
Data Source=dbserver;User ID=someusername;Password=somepassword;Database=licensedb;
The connection string stored in the ST_LICENSE.LICENSE_SERVER field will automatically be encrypted the first time it is used for security purposes. If EQuIS Professional is forced to use a specific License Server, the connection string placed in .\Program Files\EarthSoft\EQuIS\EQuIS.exe.config will also be encrypted. An example of an encrypted connection string follows.
<add name="databaseConnection" connectionString="RWN3ZSVZdn17bXBJcm+BhHlNaId6iDdhXVeAfY+Sh1txg5aXnJWZjGaPjJ6hlmp0kqaUlpapnHWMqq2lq6Wlqaaup38="
This encrypted value represents the current license server connection information. It is used by some EQuIS Professional Interfaces for licensing. Stand-alone EDP uses this to implement network licensing in the absence of an EQuIS Database connection.
By default, EQuIS will use the EQuIS Database originally logged in to as its licensing server. With the license server linking feature, it is possible to designate one or more databases to manage all the keys in an organization. The database managing EarthSoft product keys does not need to be an EQuIS Database. An external license database only needs to contain the ST_LICENSE, ST_LICENSE_USE, ST_VERSION and ST_USER tables, and must be accessible by all workstations that will consume network licenses.
A standalone license database contains only the tables required to manage licenses. This is created and updated through SQL Server Management Studio and is not available connecting through EQuIS Professional. A standalone license database can be used with all EQuIS Products, including Standalone EDP. Users should review the release notes on each new release to determine if standalone license databases require a schema update.
A separate EQuIS Database can also be used as a license database. Caution should be exercised when using an EQuIS Database as a license database as these databases can be connected to through Professional, and data could be loaded into this license database. The "script_ExternalLicenseDatabase_v7.zip" SQL statement from the EarthSoft Community Center (ECC) Downloads Dashboard (under All Items > Products > Additional Resources > v7.0) will create the standalone license database and table structure required by EQuIS.
The database users used in the license connection strings require the permissions indicated below for each table in the license database.
ST_USER: SELECT (adding licenses, using licenses)
ST_LICENSE: SELECT (using licenses), SELECT/INSERT/UPDATE/DELETE (adding licenses)
ST_LICENSE_USE: SELECT/INSERT/UPDATE/DELETE (adding licenses, using licenses)
ST_LICENSED_DATABASE: SELECT/INSERT/UPDATE/DELETE (adding licenses, using licenses)
To install EQuIS Professional and connect to the License Database, complete the following steps.
1.Install EQuIS Professional on the local PC.
2.Create a connection to the network server and using the options in Professional, create an EQuIS Database on the server.
3.In the EQuIS Database, add the connection string in ST_LICENSE, as described above.
5.Relaunch EQuIS and connect to the EQuIS Database.
6.Register when prompted as no licenses currently exist in the database.
7.Follow the registration screens and click on the Network tab to obtain the serverID. The ServerID that will be shown is related to your hardware. Note that the combination of that ServerID with the registration keys will successfully place licenses in the license database.
Error acquiring license for appID=101 from server (local)\SQLEXPRESS. Exception Message: Warning: Fatal error 9001 occurred at [Date] [time]. Note the error and time, and contact your system administrator.
This is followed by a Registration pop-up window showing that all licenses are available before the program terminates. The error may be caused by a corruption in the ldf file or, in some cases, by a virus checker locking the database. To resolve the issue, close all connections to the database, take the database offline, and then restart it.
Error acquiring license for appID=40 from server apc-sql. Exception Message: Object referenced not set to an instance of an object.
This error is typically a result of old licenses left in ST_LICENSE or non-applicable licenses for a different server ID. To resolve this error, delete all rows in the license database ST_LICENSE, except rows pertaining to Custom EDP or EDGE formats, restart Professional and reapply all current, valid keys.
Copyright © 2021 EarthSoft, Inc • Modified: 02 Feb 2021