Docs

Policy settings reference

The same setting names work in Group Policy, Intune, a Mac configuration profile and policy.json. People see each one as locked, and the app’s engine enforces it however a connection is started.

In short

Every WND Terminal setting has one name used everywhere, as a registry value under HKLM\SOFTWARE\Policies\WND Software\WND Terminal, a key in the com.wndsoftware.terminal configuration profile, or a key in policy.json. Anything you don’t set keeps its default. By default encryption is optional, people may trust certificates and any host is allowed.

WhereLocation
Group Policy or Intune, computerHKEY_LOCAL_MACHINE\SOFTWARE\Policies\WND Software\WND Terminal
Group Policy, userHKEY_CURRENT_USER\SOFTWARE\Policies\WND Software\WND Terminal
Mac configuration profileDomain com.wndsoftware.terminal, stored in /Library/Managed Preferences
policy.json on WindowsC:\ProgramData\WND Software\WND Terminal\policy.json
policy.json on Mac/Library/Application Support/WND Terminal/policy.json

WND Terminal uses the first policy it finds, in this order, and doesn’t mix them. On Windows it checks Group Policy for the computer, then for the user. On a Mac it checks the profile for the Mac, then for the user. policy.json comes last. Make its folder writable by administrators only. If a policy exists but can’t be read, the app applies strict rules (encryption required, no trusting certificates) and says so.

In the tables, a switch is a DWORD of 1 or 0 in the registry and true or false in a profile or policy.json. A list is a registry subkey with one numbered value per item, or an array.

Connections and certificates

SettingGroup Policy nameTypeWhat it does
RequireEncryptionRequire encrypted connectionsSwitchOn means every connection must use TLS 1.2 or later. The Secure switch is locked on.
AllowUserTrustPrevent users from trusting certificatesSwitchFalse stops people trusting a certificate the computer doesn’t trust. Certificates they trusted before are ignored.
AllowOtherHostsOnly allow the connections set by ITSwitchFalse limits people to the connections in Connections. They pick from a list.
ConnectionsMainframe connectionsListConnections offered to everyone. See the format below.
TrustedCertificatesTrusted mainframe certificatesListSHA-256 fingerprints to trust though computers don’t, such as self-signed ones. Colons are optional.
CodePageMainframe character set (code page)NumberThe default EBCDIC code page. 37 (US, Canada) when not set.
SignInWithCertificateSign in with smart cards (client certificates)SwitchOn signs in to every encrypted connection with the person’s certificate.
CertificateIssuerSame setting, Certificate issuerTextUses only certificates whose issuer contains this text, such as DOD ID CA.

AI

SettingGroup Policy nameTypeWhat it does
AllowAITurn off “Explain this screen” AISwitchFalse means screen text never goes to an AI model. The built-in reference for codes still shows.
AIEndpointAI model server, Server addressTextAn OpenAI-compatible server for everyone, such as http://127.0.0.1:11434/v1 for Ollama on the same computer.
AIModelAI model server, ModelTextThe model’s name on that server, such as qwen2.5:7b-instruct.

License and usage

SettingGroup Policy nameTypeWhat it does
LicenseLicense keyTextYour license key, the line starting with wnd1. on the customer portal.
LicenseFileLicense fileTextPath to wnd-terminal.license, usually on a share.
RecordUsageTurn off usage recordingSwitchFalse turns off the session log on the computer.
UsageFolderLicense usage collection, Usage folderTextShare every copy writes its usage log to, such as \\fileserver\WNDUsage$.
PeopleFileLicense usage collection, People fileTextCSV of login, name and department, so the dashboard lists everyone.
LicensedSeatsLicense usage collection, Licensed seatsNumberSeats you own, so the dashboard shows how many went unused.
DepartmentDepartmentTextDepartment recorded with usage. The people file takes precedence.

Masking and data controls

SettingGroup Policy nameTypeWhat it does
MaskCardNumbersHide card numbers on screensSwitchOn shows card numbers with only the last four digits, on screen and in copies, prints and text sent to the AI. People can’t turn it off.
MaskPatternsOther values to hide on screensListRegular expressions, such as \bACCT-\d{8}\b. Invalid patterns are ignored.
AllowCopyTurn off copying from the screenSwitchFalse turns off Copy and Copy as table.
AllowPasteTurn off pasting into the screenSwitchFalse turns off pasting.
AllowPrintTurn off printingSwitchFalse turns off printing the screen.
AllowFileTransferTurn off file transferSwitchFalse turns off IND$FILE sends and receives.

Audit log

SettingGroup Policy nameTypeWhat it does
RecordAuditTurn off the audit logSwitchFalse turns off the audit log.
AuditFolderAudit log destinations, Audit folderTextA share that gets one JSON line per event, a file per day.
AuditSplunkUrlAudit log destinations, Splunk HTTP Event Collector addressTextSuch as https://splunk.example.com:8088/services/collector/event.
AuditSplunkTokenAudit log destinations, Splunk HEC tokenTextNever shown in the app or written to its logs.
AuditSyslogAudit log destinations, Syslog (CEF)Textudp://siem.example.com:514 or tcp://siem.example.com:514.

Connection entries

In a profile or policy.json, each connection is an object with these fields.

FieldMeaning
NameThe name people see, such as Production.
Host, PortThe mainframe’s address and port. Without a port, 992 is used for secure connections and 23 for the rest.
SecureTrue means the connection is always encrypted.
BackupHostsOther addresses for the same mainframe, such as ["mvs2.example.com", "10.1.2.3:992"]. Tried in order under the same rules.
LUNameThe terminal name or pool to connect as, such as TCPPOOL1.
CodePageThis connection’s code page, such as 1141.
SignInWithCertificateSign in with the person’s certificate on this connection only.

In Group Policy, each connection is one line, such as Production|mvs1.example.com|992|secure|backup=mvs2.example.com. Add |cp1141, |lu=TCPPOOL1 or |smartcard at the end as needed.

Code pages

WND Terminal has 25 EBCDIC code pages. They are 037 (US, Canada) and the European national pages 273, 277, 278, 280, 284, 285, 297, 500 and 871, each with its euro version (1140 to 1149). The rest are 1047 (z/OS UNIX), 870 (Central and Eastern Europe), 1025 (Cyrillic), 875 (Greek) and 1026 (Turkish). People can still pick another code page per connection under Characters.

Example policy.json

{
  "RequireEncryption": true,
  "AllowUserTrust": false,
  "AllowOtherHosts": false,
  "Connections": [
    { "Name": "Production", "Host": "mvs.example.com", "Port": 992, "Secure": true },
    { "Name": "Test", "Host": "mvstest.example.com", "Port": 992, "Secure": true }
  ],
  "TrustedCertificates": [
    "C6:2F:22:79:A8:9D:36:D9:72:57:05:68:42:92:05:76:F6:CA:6C:36:94:DE:B7:ED:89:96:02:22:D2:C3:80:AC"
  ]
}

Anything you don’t set keeps its default. Session recording and response-time monitoring have their own settings, described on the session recording and response-time monitoring pages.

Questions

Which policy does WND Terminal use if there are several?

The first one it finds. Computer Group Policy, then user Group Policy on Windows, or the Mac profile, then the user profile on macOS, then policy.json. It doesn't mix them.

What happens if the policy is damaged?

If a policy exists but can't be read, WND Terminal applies strict rules, with encryption required and no trusting certificates, and tells the person why.

Can people see which settings are managed?

Yes. Managed settings show as locked, with a Managed badge that lists what's set.

See it on your own mainframe.

Install WND Terminal on a handful of PCs or Macs, import your sessions and keymaps, and let a real team use it next to what you run today. Free, two to four weeks.