Private License Service
Parent page: Altium Infrastructure Server
For organizations that require their Altium software installations to remain offline – isolated from the internet – the convenience and flexibility of on-demand software licensing can be provided by a localized Altium Infrastructure Server (AIS), rather than from the internet-based Altium Licensing Service. The freely downloadable AIS provides a Private License Service (PLS) that becomes accessible over the local or company-wide network system.
The Infrastructure Server, installed on a PC connected to the company LAN/WAN, is set up by an administrator to acquire the company's Altium licenses and then using its PLS, serve these over the network to Altium software installations. When initially acquired from Altium's web-based license service, the licenses are converted to Private Licenses for localized access.
In a similar arrangement to using a license from the Altium License Service portal, a seat (instance) of a PLS-hosted Altium license can be 'leased' by workstation software when it is in use, and then 'revoked' (returned to the available pool of licenses) when no longer required. With the Altium PLS, licenses can also be served on a Roaming basis, where the license seat is leased to the target machine for a specified time – this allows the software's host PC, say a laptop, to 'roam' freely while isolated from the network. Also, Altium Servers connected to the network may be licensed by the AIS.
The Altium Infrastructure Server (AIS) and its PLS offer the flexibility required by companies that host multiple Altium software installations, with the bonus that the license and seat usage can be configured, monitored and controlled from a centralized AIS – which in turn is hosted on a local LAN/WAN that may be isolated from the internet.
Preliminaries
If it's not already in place, the first step in using the Private License Service is installing and licensing the Altium Infrastructure Server.
► See Installing the Infrastructure Server
The Altium Infrastructure Server's functionality, including its Private License Service capabilities, becomes available when the AIS has been licensed by the addition of a suitable Infrastructure Server License. This is done by signing in to the AIS using the default admin/admin
credentials, accessing the Licenses page (ADMIN » LICENSING) and adding the license files supplied with the AIS installation download. The server is 'self' licensed from imported alf
license files, or AIS licenses acquired from the Cloud, if available – in both cases, it licenses itself.
► See Licensing the Infrastructure Server
Once installed and licensed, the AIS can acquire licenses for Altium software from the online AltiumLive License service via the AltiumLive portal. This is performed through the server's License Manager page (ADMIN » LICENSES), by selecting the From Cloud option of the button menu.
Note that the AIS needs to be configured to connect and sign in to the Altium License service portal, so that the licenses purchased by your organization can be initially acquired – it may be offline once this is complete. Alternatively, all the required licenses could be acquired via a separate Server, which is connected to the internet, and then transferred to the local AIS as individual license files.
► See Acquire software Licenses from the Cloud
Using the License Service
Once the Altium Infrastructure Server (AIS) and its Private License Service (PLS) has been installed and licensed (as above), licenses that are acquired from the AltiumLive Licensing service such as Server, Client Access (CAL) and other Altium software licenses, can then be served over the local network by the PLS.
Local PLS Setup
In the default PLS configuration, acquired licenses, which are set for All Users access by default, will be made available to Altium software installations hosted on the network. The Infrastructure Server itself is 'self licensed' as outlined above, through imported alf
license files.
For the default PLS settings and acquired license configurations, any connection to the PLS from Altium software will be granted access to the available licenses. The simple arrangement is ideal for using a central licensing service (the AIS) to license several Altium software workstations that have identical licensing requirements – say, from a single multi-seat license. See below for how Altium software, such as Altium Designer, connects to the PLS.
To access the PLS settings, select the License Manager options page in the AIS browser interface – ADMIN » SETTINGS – License Manager.
The License Manager options on the browser Settings page are as follows:
- Cloud license service url – Preset by the AIS installation to the correct web address for access to the AltiumLive License Service, which allows license acquisition based on your entered AltiumLive sign in credentials. The credentials may be added or edited in the General – Altium Live Credentials page under ADMIN » SETTINGS.
- Automatic user creation – When checked, the PLS will automatically generate an AIS user account (set to the workstation's Windows Account Name) when Altium Designer connects to the AIS (see below). The generated AIS user profile is then used for Role membership, and therefore to determine license distribution for that Altium software workstation. If the option is unchecked, no user account will be created.
- Seat return timeout interval – Specifies the period of client (a connected workstation) inactivity before the current license lease will expire and be returned to the available pool of license seats. The PLS regularly queries a client over the network and expects a response, and will cancel the license lease if this has not been returned for the specified number of hours. When client software disconnects from a license in the normal 'clean' way (Exit, Disconnect from PLS, etc) a leased license seat is automatically returned.
- Automatically create assignment for All Users group – When checked, newly acquired licenses will be assigned to the
All Users
group. The served license will be accessible to all workstations that connect to the AIS, regardless of any Role group a workstation's User profile is assigned to. Note that license assignments may be edited, as described below. When the option is unchecked, an acquired license is not assigned to any user group and therefore not accessible over the network.
The default setup, in practice, means that when an Altium software workstation connects to the AIS License Service (PLS):
- Suitable licenses are made available to Altium software from the AIS. All compatible licenses are available to all workstations, since the PLS is set to Automatically create assignment for All Users group for acquired licenses.
- A new user profile, based on the workstation's Windows Account Name, is created in the AIS – even if the workstation software does not lease a license. This is due to the default Automatic User Creation setting.
From a software user's perspective, it simply means that suitable licenses are available and may be used (leased).
License Altium Software
Licenses that have been configured and exposed by the Private License Service in the AIS can be accessed by Altium software installations on the network, which act as clients to the PLS.
To access an Altium Designer license provided by the PLS for example, use the Connect to Local Server option on the License Management view to first establish the connection. Set the Server name and Server port fields to match those of the AIS in the Private License Server Setup dialog.
Once Altium Designer is connected to the Infrastructure Server and its PLS, the information on the connected Private Server will be shown in the Private Server region of the License Management view, and the available licenses region of the view will automatically present the specific licenses provided by the PLS connection and available to you for use.
Use the Disconnect button to disconnect from the currently connected private license server. Use the menu of the Disconnect button to connect to a previously connected server, establish connection to a new server, or remove the currently connected server (essentially, disconnect from it and remove it from the list of previously connected servers).
To lease a license for the Altium Designer installation, select the desired license from the list and click the Use button. Alternatively, a license hosted by the AIS may be set to Automatic Leasing mode, so that no user intervention is required in the client software – beyond establishing the initial connection to the AIS. Note that Altium Designer will retain the PLS connection settings and attempt to re-establish the connection when starting.
With a license in use, its tile will be labeled with the icon and highlighted with a green border. The Seats field for the license will update to reflect another seat of that license taken.
When the license has been leased, by either automatic or manual selection in the client software, the Infrastructure Server's Licensing page (ADMIN » LICENSES) will indicate that a seat of the License is in use – shown as an incremented User Count for that license. The license is immediately released if the workstation disconnects from the PLS, the user closes the software, or the license lease is forcibly revoked by the AIS admin using the associated button.
► See Automatically generated User profiles for more detail on the Automatic user creation option.
Manage License Access
To control license availability for Altium software users, the Altium Infrastructure Server (AIS) can be configured to associate specific licenses with defined user Roles (groups of Users). In practice, when a workstation connects to the AIS, the License Service (PLS) will offer only licenses that are assigned to Roles that include the workstation's User profile as a member.
Licenses acquired by the AIS are assigned to 'All Users' by default, but can be reassigned to any available Role. Similarly, Users can be added to any available Role.
► See Users and Roles for an overview of working with Users and Roles in the AIS, or Managing Users for more detailed information.
Before managing license distribution in this more specific way (by user Role membership), there are a number of Infrastructure Server conditions that should be in place:
- User profiles have been added for the relevant software workstations. These are automatically generated when a workstation has connected to the AIS.
- Suitable user Roles have been added to the AIS, and the above User profiles have been included as members of those Roles.
- Licenses that apply to the workstation software have been acquired to the AIS. The licenses must be active and have sufficient seats available.
- The default admin/admin account in the AIS has been changed to a correctly configured (not default) administrator account profile. This is highly recommended, regardless of how the AIS is used.
License Assignments
With the AIS User accounts and Roles established, acquired software licenses can be assigned to Roles as needed.
In the case shown in the below image, two workstations (ENGINEERING-2
and ENGINEERING-3
) have connected to generate matching User profiles (Bruce
and Narelle
) based on the workstation active Windows Account. Two Roles have been added (Engineering
and QA
), and the users added as members of those Roles (Bruce
is a member of Engineering
, and Narelle
is a member of both Engineering
and QA
).
Select the licensing list (ADMIN » LICENSES) to access the licenses that have been acquired by the AIS, which can then be assigned to the desired Roles. In the example shown below, two Altium software licenses have been added to the AIS, and are initially assigned to the default All Users
role.
To change a license assignment to a more suitable Role, select its button to open the License Edit page, and then the License assignments edit button () to access the Assign to role menu options in the Edit Assignment dialog. In this example, the license has been reassigned to the QA
role.
The license assignment options include:
- Automatic leasing: Forces Altium software on a workstation to automatically lease (use) this license when it is available. In the software's License Management view for example, the normal process of choosing the license from the list and selecting Use is performed automatically, for this license.
- Seat availability: Specify the number of License seats (up to its total seats rating) that will be made available for the associated Role, or simply check the All available seats option to enable the total number of seats for that License (its User Count attribute)
- Roaming: Allow a License to be 'roamed' (used by Altium software when its host PC is not connected to the network) by selecting the Allow Roaming option. The Max roam duration setting will configure the license to disable a 'roamed' seat after the nominated period. Enter
0
to allow unlimited roaming (for a term-based license, roaming will be effectively limited by the license's expiration date). See On-Demand Licensing for more information about Altium license Roaming. - Notifications: Notifications are messages that will be sent to users in response to particular events, such as when a specified percentage of the available license seats have been leased, or if an attempt at leasing a seat fails. Note that email notifications are not available until configured and enabled – see Configuring Email Notifications.
- When the Notify when <x>% of available seats have been leased option is enabled and the number of leased seats reaches (or exceeds) this percentage, then a related notification email will be sent to the Role group specified in the Send to users with role field. See example.
- When the Send reject notifications option is enabled, an error email will be sent to the above Role when a user attempts to lease an unavailable license seat – for example, where a remaining seat is shown as available in the (unrefreshed) Altium Designer License Management view but has since been leased by another user. See example.
When the new license assignment configuration is complete, click to commit the assignment to the selected Role. To delete an existing license assignment use the button associated with its entry.
License Roles View
To collectively view and edit the existing license Role assignments, select the Roles view in the License Manager (ADMIN » LICENSES – Roles tab). Click on a Role name in the Roles column to see its User members, and on the right, its assigned licenses. For the Users, Roles and License assignment in this example, this aggregate view shows that user Narelle
is a member of the QA
role, which has access to the 15-seat license, as assigned above.
This view also allows license assignments to be added to Roles, via the button. To assign a license to the Engineering
role in this case, and therefore to the user profiles Bruce
and Narelle
, select a suitable license from the License drop down menu in the Add Assignment dialog, and the change.
Here, a 5-seat license has been added to the Engineering
Role and its member workstation accounts (Users). For details about the assigned license, select the expand option ( ) associated with its entry.
Note that in this case a new license assignment has been added to a Role, rather than an existing assignment being reassigned from All Users
to a specific Role (as outlined above). This means that, as in the example shown here, while a 5-seat license has been added to the Engineering
Role, the license is still assigned to the default All Users
Role as well – and therefore, exposed to all workstations that connect to the Infrastructure Server.
Deleting the license's additional All Users
Role assignment will leave the license only assigned to the Engineering
Role, rather than both, and thereby exclusively available to the Engineering
group of Users. To delete an existing license assignment use the button associated with its entry.
As a result of these example license assignments:
- The software workstation with the Windows Account Name
Bruce
on PCENGINEERING-2
will be offered the 15-seat software license. This is because in the AIS:- The connected User profile is
Bruce
(Bruce/ENGINEERING-2
) - The User profile
Bruce
is a member of theEngineering
Role group. - The
Engineering
Role has the 15-seat license assigned to it.
- The connected User profile is
- The software workstation with the Windows Account Name
Narelle
on PCENGINEERING-3
will be offered the 15-seat and the 5-seat software licenses. This is because in the AIS:- The connected User profile is
Narelle
(Narelle/ENGINEERING-3
) - The User profile
Narelle
is a member of theEngineering
andQA
Role groups. - The
Engineering
Role has the 15-seat license assigned to it, and theQA
Role has the 5-seat license assigned to it.
- The connected User profile is
Working with Licenses
The AIS based Private License Service offers a range of administration features for managing license allocation and usage, including the ability to forcibly release a leased license and closely monitor how licenses are used.
Release a License in Use
For situations where a license has been in use by an Altium software installation but not correctly released, the PLS provides a means of terminating that lease and returning the seat to the pool of available license seats. This can occur when the user's PC has lapsed into standby while the software is active, or through some form of software crash that has prevented a clean exit. In practice, that license seat is still registered as being in use and therefore denied to another user.
To locate the license of concern in this situation, go to the Licenses list in the AIS web interface by selecting ADMIN » LICENSES. Within the list of licenses shown under the Licenses tab, the leasing information for each entry is available by expanding the license entry with the button – use this to find the user that still retains the license seat.
The license leased to that user can be terminated, and the seat returned to the license pool, by clicking the button associated with the user entry and then confirming the action in the Release seat dialog. Altium Designer, for example, will notify the user that the license has been forcibly released by an administrator.
Note that the notification will only apply to network-based user clients, and not to a software user that has leased a license on the machine that also hosts the AIS – that is, when using Altium software that is installed on the same PC as the Infrastructure Server.
Monitor License Usage
The Altium Infrastructure Server (AIS) includes a range of license usage monitoring and reporting features that can be used to audit how Altium software licenses are used within an organization. This is useful for ensuring that the best use is being made of the available license seats, for anticipating future license requirements and determining the usage of individual Users.
The AIS license usage features are accessed through the administrator menu under the Reports tab on the License Manager page (ADMIN » LICENSES). This offers a range of reporting options that are accessed by specific tabs within the Reports view. Depending upon the type of information that's required for each report, the associated reporting filters can be applied to tailor the results to include specific Licenses, Roles, Users and time periods.
To filter the usage reporting results to show the license activity of a particular set of Licenses for example, select the licenses of interest from the Licenses drop down menu and click . The filtering action of the options remains in effect while each reporting style tab is selected, allowing you to see usage reports that are constrained to those licenses.
The Report page also offers the option to export the current report to disk in CSV format – compatible with Microsoft Excel and other spreadsheet applications – for administration and accounting purposes. Select the desired report results using the appropriate tab and filtering for your needs, click the button and nominate a location to save the file to disk.
Custom Error Messages
When working with Altium software, a user can receive a range of pop-up Error dialogs from the Infrastructure Server in response to User Account, License and Seat allocation issues.
The text for the error codes presented in the dialogs can be modified by editing the contents of the errors.xml
file, which is located in the LicenseManagerService
directory of the AIS installation – typically C:\Program Files (x86)\Altium\Altium Infrastructure Server\LicenseManagerService
.
For example, the XML entry for the default error message generated when the PLS cannot create a synchronized User profile – say, because the PLS Automatic user creation option is disabled – is:
<Error code="4" text="Unable to connect to License Manager. User %USERNAME% has not been found and could not be created because of the server policies. Please contact License Administrator"/>
This might be edited to produce the following Error dialog. Note that CR/LF codes (
) and key parameters such as the related User Name (%USERNAME%
) can be included where needed.
Licensing a Remote Altium Server
Along with licensing Altium design software such as Altium Designer, the Altium Infrastructure Server (AIS) can also be used to license an Altium Server. In this configuration of servers, the AIS acts as a central licensing manager to all Altium products including any Altium Servers on the network, such as those used for design data management in individual engineering departments.
This type of installation is suited to a large enterprise, where each company department (Engineering, QA etc) might use multiple Altium software installations, and a local department Server for design data management purposes. Both the Altium Servers and Altium software installations are licensed by a central, dedicated licensing service such as the License Manager (PLS) in the Altium Infrastructure Server (AIS).
► See the diagram below for a schematic representation of this multi-server arrangement.
Assuming that a departmental Server already has its local User accounts set up, all licensing for the department can be managed by the central AIS when:
- The AIS has acquired valid Altium Server and Altium Server CAL licenses.
- The remote (department) Server has been configured to use its External PLS Mode to access the central AIS, and the Server's local 'self-licensing' manager is disabled (see below).
Add Altium Server Licenses
Server licenses are added to the AIS, like any other license, by selecting the From cloud option from the button menu and selecting available licenses from the ALtiumLive License Service.
When correctly setup, an Altium Server on the network will automatically lease an available license from the AIS, so no further configuration is needed in the AIS itself – the licenses can remain assigned to the default All Users
group, and the assignment's Auto leasing option does not need to be selected.
Configure the Remote Server PLS
While an Altium Server is usually licensed through its own self-licensing capabilities, in this case, a central licensing service (the AIS) will be providing the Server's license. To change the Altium Server setup so that it will lease an available license over the network from the AIS, first select the External PLS mode in its License Manager setup (Admin » Settings – License manager).
In this mode, the (department) Server will attempt to obtain its licenses from the server PLS address and port specified in the PLS url and PLS Port fields. Enter the network address/port of the AIS that is acting as a central licensing service. The network address of the 'external' AIS in the above image, and therefore the target for the department Server's external PLS service connection, is http://LicenseServer
– this is based on the network computer_name
of the AIS-based license service's host PC.
The Altium Server also needs to be switched over from seeking its own licenses from its internal PLS, to accessing these from the specified external PLS service – the AIS. This is achieved by unchecking the Use local license manager for vault licensing option, as shown above.
Confirm the changes made in the License Manager by saving the new configuration ( ).
The configured department Server will now lease its licenses from the central AIS, which will show (at a minimum) that a server license seat User Count has incremented, and the occupied seat is registered to the remote Server's generated <computer name>:System
user. In this example case, the remote server (Altium On-Prem Enterprise Server) is hosted on a PC named IMPALA
.
Licensing Local Server Users
In larger multi-server systems, as described above, a departmental Server provides normal data management services to its local workstations, but its internal licensing service (PLS) is 'switched over' to use the license service in the central AIS. This means that licensing for both the department Server and the local Altium software that uses it will be provided by the central PLS service.
With this arrangement the users of department workstations simply sign in to the 'local' Server as normal, using their existing User accounts. Since the Local Server is set to External PLS mode, signed in Users will have access to licenses that have been 'redirected' from the central Licensing Service (the AIS). When signed in from Altium Designer for example, its License Management view will automatically list any compatible licenses offered by the central AIS.
Server User Synchronization
Part of the mechanism involved in granting a User access to remote licenses via the local Altium Server, is the creation of a 'synchronized' user name in the central Licensing Server (the AIS). This is a function of the Automatic user creation option in the AIS License Manager (PLS), which must be enabled to successfully license software workstations that sign in to a Local (department) Altium Server.
By way of example, the below image shows a department server (Altium On-Prem Enterprise Server hosted on IMPALA
) with two registered User accounts; Bruce
and Narelle
. These represent accounts for local users that sign in to the server to access its data management services. This server represents one of the local department Servers illustrated in the above multiple server image, where all licenses are sourced from the central licensing service in the AIS.
If the licenses offered by the central AIS are set for the default All User
access, these will be redirected through the department Server to all local Users that sign in. Once a Server user has signed in, even if a license has not been leased, the License Service in the central AIS will automatically create a 'synchronized' User account.
In the below image, user Bruce
has signed in to his account in the local server IMPALA
, which is set to source licenses from the central licensing AIS (LicenseServer
). Here, the Altium Designer is using a seat of a license offered by the central licensing service (the AIS), which is regarded as leased by Bruce IMPALA
– this is the First Name + Second Name
entries of the automatically generated User account in the AIS. Note also that the licenses table heading indicates that the source of the available licenses is a Private Server, which in this case is LicenseServer
.
As shown below, two AIS accounts that correspond to the Local Server accounts have been automatically created as the Users have signed in from their workstations to their department's local server. Local Server account Bruce
becomes AIS account name IMPALA:Bruce
, and Server user Narelle
becomes IMPALA:Narelle
in the central AIS.
Note that the IMPALA:System
account corresponds to the department server itself (Altium On-Prem Enterprise Server in this example), which is leasing its server licenses from the AIS – see Licensing a Remote Altium Server above.
Once these User accounts have been registered in the AIS they can be edited as needed. Connectivity and Role associations are bound to the account User Name only, so other parameters can be changed to suit. A First and Last name entry change to the AIS account, for example, would be reflected in the name associated with a license leased by Altium software when signed in to its Local Server.
Manage Server User Licenses
User names that have been synchronized to the central Licensing Server in a multi-server setup can be added to Roles, so as to manage license and seat availability. When a User then signs in to a local (department) Server, the licenses that are available from the central AIS will be determined by the Roles and License assignments configured for that synchronized User profile in the central Licensing Service.
For the example shown here:
- The synced user
IMPALA:Bruce
(theBruce
user synced from the local department server,IMPALA
) has been made a member of theQA
Role. - The
QA
Role has been assigned to one of the available Altium Designer licenses, with 5 of the 20 license seats allocated for the Role. - The synced user
IMPALA:Narelle
(theNarelle
user synced from the local department server,IMPALA
) has been made a member of theEng
Role. - The
Eng
Role has been assigned to one of the available Altium Designer licenses, with all 20 license seats allocated for the Role.
Following through on this example, when a user signs in the local department server's Bruce
account from Altium Designer, 5 seats of a 20-seat Altium Designer license are offered by the central license service (the AIS) via the local server (Altium On-Prem Enterprise Server). Similarly, when the Narelle
server account is signed in to from Altium Designer, all 20 seats of another Altium Designer license are available.
These user Role and License assignments would be generally implemented by the Licensing Server administrator once a Local Server user has signed in for the first time (thereby instigating the User sync process in the AIS).
Troubleshoot License Access
If your software is not able to connect to the Infrastructure Server's PLS, or licenses that you have acquired and configured in the AIS are not seen as available by the software, there may be system or server settings that are preventing access.
When troubleshooting any issues, consider the following:
- Host PC Firewall – The Altium server PLS uses port
9780
by default when transferring licensing data on the network. Check that this port has been opened in the host PC's firewall during the AIS installation. - Allowed network connections – Altium Designer, for example, offers a System – Network Activity page of the Preferences dialog. Check that the 'License Server' entry is checked, so the AIS can communicate with Altium Designer over the network.
- Try basic tests:
- Check locally – If the AIS is set up on a PC that also hosts an Altium software installation, confirm that the server's PLS is accessible to that local installation before troubleshooting any remote PCs. If the PLS and private licenses are available locally, this indicates that PCs elsewhere on the network that cannot connect have a network or software (rather than a server PLS) configuration issue.
- Assign license to All Users – If a license that has been assigned correctly in the AIS is not available for lease in Altium software installation, temporarily change its Role assignment to All Users (or simply create a new All Users assignment for that license). See License Assignments, above. If it then becomes available to the software, this indicates there was a problem with the user Role or license assignment in the server.
- Refresh the server PLS – After making changes to the PLS license setup in the AIS, particularly when adding or removing server licenses, you may need to sign out then back in again to see the changes. In some situations it may be necessary to restart the AIS, by either rebooting the PC or using the server Restart feature in Windows' IIS Manager.
- Refresh the software's PLS connection – After making changes to license access in the server PLS or the Altium software, try refreshing the software connection to detect the change. In Altium Designer for example, click the Refresh button on the Licensing Management page and/or the Disconnect/Reconnect... private license server link. To force a full connection refresh, select the Setup private license server link and click OK in the Private License Server Setup dialog.
- Use the Automatic user creation mode – if this option is turned off in the AIS, a User profile will not be created when software has connected to the PLS. Therefore a related user account is not available, and cannot be made a member of a Role that has particular licenses assigned to it. In a multi-server arrangement, as described above, an automatically created AIS User profile is required for Server Users to sign in and access licenses.