Important note

Authored By Don Dickinson (credit to Lumerical for most examples)

Prerequisites

Examples of access control

• Reserve a set of licenses for a particular group of users or a single user.
e.g. if one user always needs access to a seat, a license can be permanently reserved for this user.
• Exclude certain machines or users from a license.

These rules are applied to Opticstudio or OpticsBuilder which are defined in Ansys license files as a "feature". The features that correspond to these product editions are listed below.

Note for OpticStudio licenses, that each edition includes the levels of the lower editions. For example, if you have Enterprise, you also have the Premium and Pro levels listed in the license file. So if you are defining an access rule be sure to make rules that includes all ZOS levels below the edition you purchased.

zos_level1 = OpticStudio Professional
zos_level3 = OpticStudio Enterprise

zob_level1 = OpticsBuilder Enterprise
zob_level2 = OpticsBuilder Enterprise

Location of the 'ansyslmd.opt' file

Note: Create the 'ansyslmd.opt' (text) file using notepad, if this file is not found in your installation folder. The default location is shown below).

Windows:

"C:\Program Files\ANSYS Inc\Shared files\Licensing\license_files\"

Linux:

/ansys_inc/shared_files/licensing/license_files/

Keywords to use

USER

• Defining a user that for use with an option. This option is case-sensitive.
 USER username
•   Example: Reserve 1 seat of an Opticstudio Premium license to USER bill. Note that if you only have a 1 seat license, Bill will be the only user able to use the license.
RESERVE 1 zos_level1 USER billRESERVE 1 zos_level2 USER bill

GROUP

• Define a group of users for use with any options. This option is case-sensitive.
GROUP group_name user_list
• Example: Define the GROUP 'Researchers' consisting of users tom, jim, and bill and Reserve 1 OpticStudio Premium license license to the GROUP.
GROUP Researchers tom jim bill RESERVE 1 zos_level1 GROUP ResearchersRESERVE 1 zos_level2 GROUP Researchers

NoteEnsure that a USER only belongs to one (1) user GROUP.

HOST_GROUP

• Define a group of hostnames (computers) for use with any options. This option (HOST_GROUP)
is case-sensitive. Use the computer's machine name to identify each hostname.
HOST_GROUP group_name host_list
• Example: Define the HOST_GROUP ZOSPREM consisting of Computer1 computer2 and computer3
HOST_GROUP ZOSPREM Computer1 computer2 computer3

Note: Ensure that each HostName only belongs to one 1 HOST_GROUP.

INCLUDE

• Allow a user or predefined group of users/hosts to use the license for this feature. Anyone not in an INCLUDE statement is not allowed to use that feature. EXCLUDE supersedes INCLUDE; conflicts between the EXCLUDE list and the INCLUDE list are resolved by the EXCLUDE taking precedence.
INCLUDE feature type {name | group_name}
• Example: Allow the GROUP 'researchers' to use an Opticstudio Professional license.
INCLUDE zos_level1 GROUP researchers

Notes: INCLUDE is required for USER_BASED or HOST_BASED features. The system administrator specifies which users are allowed to use the product, via INCLUDE, and the license limits the number of users that are included.

INCLUDEALL

• Allow a user or predefined group of users/hosts to use all license features served by the vendor daemon on the license manager. Anyone not in an INCLUDEALL statement is not allowed to use these features.
INCLUDEALL type {name | group_name}
• Example: Allow USER 'jane' to use all licenses for the vendor daemon on the license manager.
INCLUDEALLUSER jane

MAX

Limits usage for a group or user.

MAX 2 feature type {name | group_name}

MAX 2 zos_level2 GROUP ZOSPREM MAX 2 zos_level1 GROUP ZOSPREM

EXCLUDE

EXCLUDE feature type {name | group_name}
• Example: EXCLUDE the group NOZOS from using Opticstudio Premium .
EXCLUDE zos_level2 GROUP NOZOS EXCLUDE zos_level1 GROUP NOZOS

EXCLUDEALL

• Deny a user or predefined group of users/hosts access to All licenses on the current FlexLM. If the type is not defined it will exclude all license features for all types (USERS, GROUPS, and HOST).
EXCLUDEALL type {name | group_name}
• Example: EXCLUDEALL the machine with HostName 'sky' from checking out any license features on the vendor daemon on the current license manager.
EXCLUDEALL HOST sky

RESERVE

• Reserve licenses for a USER, HOST or GROUP of users or hosts.
RESERVE number feature type {name | group_name}
RESERVE 1 zos_level1 USER jillRESERVE 1 zos_level2 USER jill

EXPDATE

• Specify the expiration date of the license to be reserved to a predefined user/host or group of users/hosts.
EXPDATE={expiry_date}
• Example: RESERVE 1 license of OpticStudio Premium with expiry date 31-jan-2022 to GROUP 'ZOSPREM'.
RESERVE 1 zos_level1:EXPDATE=31-jan-2022 GROUP ZOSPREMRESERVE 1 zos_level2:EXPDATE=31-jan-2022 GROUP ZOSPREM

Note: Ensure that the 'FEATURE' and 'EXPIRY DATE' are identical to that in the license file.

TIMEOUT

This keyword is available in the license file, but if Opticstudio or OpticsBuilder is open when a license seat is freed it may override this setting and keep the license seat in use, since teh application is constantly trying to check in with the license server. If this expiration does work, the end user's Zemax application will prompt them to save their work before quitting.

• Sets the time after which an inactive license is freed and reclaimed by the vendor daemon.
• Minimum timeout is 7200 secs (2 hours)
TIMEOUT feature{:keyword=value} seconds

TIMEOUTALL

• Same as TIMEOUT, but applies to all features.
TIMEOUTALL 7200