PayloadKit

XCreds

com.twocanoes.xcreds

XCreds 5.9 (9148) OAuth Settings

macOS

Configuration Keys (124)

Showing 124 of 124 keys

KeyTypeDescriptionDefaultRange
ADDomainstring

ADDomain

stringThe desired AD domainDefault: —Range: —

Map Kerberos Principal Name

stringThe OIDC claim that has the kerberos principal name. This is used when logging in with OIDC and ADDomain is defined. During login, the claim that contains the kerberos principal name will be read and the local account will set dsAttrTypeNative:_xcreds_activedirectory_kerberosPrincipal to the kerberos principal name. The menu item will then use this value and the password to get a kerberos ticket.Default: —Range: —

Should Update Kerberos User Principal ADDomain

booleanIf the user principal has a domain name and the OpenID token does not match the ADDomain name, replace it with the ADDomain name. For example: bob@sub.example.com -> bob@example.com if ADDomain was example.com.Default: falseRange: —
clientIDstring

Client ID

stringThe OIDC client id public identifier for the app.Default: —Range: —

Client Secret

stringClient Secret sometimes required by identity provider.Default: —Range: —

Create User as Admin

booleanWhen set to true and the user account is created, the user will be a local admin.Default: falseRange: —

Skip User Setup Buddy

booleanWhen set to true and a new user home is created, the .skipbuddy file will be created at the top of the home folder to skip user setup screens.Default: falseRange: —

Allow Users Claim

stringThe claim that contains the value to check for in the allowedUsersArray. Both must be defined.Default: "upn"Range: —

Allowed Users

arrayList of users that are allowed to log in. An empty array or undefined array means any user can log in as long their cloud credentials are valid. The preference allowUsersClaim must be defined to a claim in the idToken that identifies the users. For example, if the allowUsersClaim is set to upn and the allowedUsersArray is set to an array that contains fred@twocanoes.com and the upn of a logging in user is fred@twocanoes.com, they would be allowed to log in. barney@twocanoes.com would not.Default: —Range: —
userstring
string—Default: —Range: —

Allow Login If Member Of Group

array(OIDC Only) List of groups whose members should be allowed to login. If the user is a member of any of these groups they can login regardless (including creating new local account) if authorization succeeds. If a local account exists but the user is no longer part of a group the login will be denied.Default: —Range: —
groupstring
string—Default: —Range: —

Create Admin If Group Member

arrayList of groups that should have members be given local administrator status. Local administrator status can be given on first authentication when account created, or on later sign in of existing user when a group member. Administrator status is removed if group membership later revoked. Administrator status is not removed if user is the only XCreds admin user. Set as an Array of Strings of the group identifier.Default: —Range: —
groupstring
string—Default: —Range: —

Claims To Add To Local User Account

arrayList of claims that should be added to the user local account. Will be prefixed with _xcreds_oidc_. Set as an Array of Strings of the claim.Default: —Range: —
claimstring
string—Default: —Range: —

System Info Additions

arrayItems to be added to the System Info Popover at login. Can be made dynamic by using the override script override to provide this settingDefault: —Range: —
itemstring
string—Default: —Range: —

Should Switch To Login Window When Locked

booleanWhen set to true and the user locks the current session, XCreds will tell the system to switch to Login Window. The current session will stay active but the user will login with the XCreds Login Window to resume the session.Default: falseRange: —

LocalFallback

booleanIf the user attempts to login as an AD user and the login fails against AD, try against local user account if off domain or AD user not found.Default: falseRange: —

Should Activate System Info Button

booleanShow the system info popover as active when first startingDefault: trueRange: —

Discovery URL

stringThe discovery URL provided by your OIDC / Cloud provider. For Google it is typically https://accounts.google.com/.well-known/openid-configuration and for Azure it is typically https://login.microsoftonline.com/common/.well-known/openid-configuration.Default: "https://login.microsoftonline.com/common/.well-known/openid-configuration"Range: —
EnableFDEboolean

Enable Full Disk Encryption (FDE)

booleanEnabled FDE enabled at first login on APFS disks.Default: falseRange: —

Save PRK

booleanSave the Personal Recovery Key (PRK) to disk for the MDM Escrow Service to collect.Default: falseRange: —

FDE Recovery Key Path

stringSpecify a custom path for the recovery key.Default: —Range: —

Enable FDE Rekey

booleanRotate the Personal Recovery Key (PRK).Default: falseRange: —

Login Window Width

integerLogin Window webview width (Integer). If this is not defined, it will be full width. Minimum value of 150.Default: —Range: 150 – —

Login Window Height

integerLogin Window webview height (Integer). If this is not defined, it will be full height. Minimum value of 150.Default: —Range: 150 – —

LoadPage Title

stringWhen no network connection or a profile is not defined, this title is shown in an HTML view to the user when cloud login is configured.Default: "Please Wait...."Range: —

LoadPage Info

stringWhen no network connection or a profile is not defined, this text is shown in an HTML view to the user when cloud login is configured.Default: "(or try connecting to network or check preferences)"Range: —

Login Window Logo Path

stringURL to an image to show icon in the username / password login windowDefault: —Range: —

Login Window Background Image URL

stringURL to an image to show in the background while logging in. Default value: file:///System/Library/Desktop Pictures/Monterey Graphic.heic.Default: "file:///System/Library/CoreServices/DefaultDesktop.heic"Range: —

Login Window Background Image Alpha

realAlpha value of loginWindowBackgroundImage. Default value: 1Default: 1Range: 0 – 1

Login Window Secondary Monitors Background Image URL

stringURL to an image to show in the background on secondary display while logging in. Default value: file:///System/Library/Desktop Pictures/Monterey Graphic.heic.Default: "file:///System/Library/CoreServices/DefaultDesktop.heic"Range: —

Login Window Background Image Fill Screen

booleanSet the background image to Fill Screen rather than Fit to ScreenDefault: trueRange: —

Login Window Secondary Monitors Background Image Fill Screen

booleanSet the secondary monitor(s) background image to Fill Screen rather than Fit to ScreenDefault: trueRange: —

Login Window Secondary Monitors Background Image Alpha

realAlpha value of loginWindowSecondaryMonitorsBackground. Default value: 1Default: 1Range: 0 – 1

Should Remove Menu Item Auto Launch

booleanWhen XCreds is installed, a launch agent is installed to automatically keep the menu item running when a user is logged in. Setting shouldRemoveMenuItemAutoLaunch to true makes XCreds at the login window remove the launchagent plist that was installed. This will cause the launchagent to not launch XCreds menu item on log in.Default: falseRange: —

Should Use AD Native Password Change Menu Item

booleanWhen changing password via menu item, use the native UI to change password in Active Directory.Default: falseRange: —

Password Change URL for Menu

stringAdd a menu item for changing the password that will open this URL when the menu item is selected. If shouldUseADNativePasswordChangeMenuItem is set to true, this value is not used.Default: —Range: —

Redirect URI

stringThe URI passed back to the webview after successful authentication. Default value: xcreds://auth/Default: "xcreds://auth/"Range: —

Show Cloud Login By Default

booleanDetermine if the Mac login window or the cloud login window is shown by default. When not set or set to true, show cloud login. If false, shows Mac login.Default: trueRange: —

Password Change Check Rate Hours

integerThe number of hours between checks. Default value: 3. Minimum value: 0. Max value: 168.Default: 3Range: 0 – 168

Password Change Check Rate Minutes

integerThe number of minutes between checks. Default value: 0. Minimum value: 0. Max value: 59. This value is added to refreshRateHours. If refreshRateHours is 0, minimum for refreshRateMinutes becomes 5.Default: 0Range: 0 – 59
scopesstring

Scopes

stringScopes tell the identify provider what information to return. Note that the values are provided with a single space between them. Provide the following values the follow IdPs: Google: profile openid email Azure: profile openid offline_access Note that Google does not support the offline_access scope so instead use the preference shouldSetGoogleAccessTypeToOffline. Azure provides unique_name which is mapped to the local user account by using the prefix before "@" in unique_name and matching to the short name of a user account. Google provides "email" and is matched in the same way.Default: "profile openid offline_access"Range: —

Request Google Refresh Token

booleanWhen using Google IdP, a refresh token may need be requested in a non-standard way.Default: falseRange: —

Google Host Domain

stringWhen using Google IdP, set the HD key to show the user's domainDefault: —Range: —

Should Prompt For AD Password Change

booleanIf the domain controller returns back that the password is expired or needs to be changed, prompt the user. If this is set to false, login will fail and an error message will be shown.Default: trueRange: —

Show Sign In Menu Item

booleanDetermine if the Sign In menu item is shown in the XCreds menu. When not set or set to true, show Sign In. If false, the Sign In menu item is hidden.Default: trueRange: —

Should Suppress Local Password Prompt

booleanDo not prompt for local password.Default: falseRange: —

Prefer Local Login over Cloud Login

booleanFavor using XCreds' local login screen over the cloud login UI.Default: falseRange: —

Use ROPG when testing password

boolean(Deprecated in v4.0) When verifying password in the menu app, use ROPG.Default: falseRange: —

Should Use Basic Auth With ROPG

booleanWhen using ROPG, do basic HTTP auth. Default: falseDefault: falseRange: —

ROPG Client ID

string(Removed in v4.0) ROPG Client ID for use when checking password.Default: —Range: —

ROPG Client Secret

string(Removed in v4.0) ROPG Client Secret for use when checking password.Default: —Range: —

Use ROPG when logging in at login window

booleanWhen verifying password in the login window, use ROPG.Default: falseRange: —

Use ROPG for menu login

booleanWhen verifying password in the menu app, use ROPG.Default: falseRange: —

Should Use ROPG For Password Change Checking

booleanWhen verifying local password matches cloud password in the background, use ROPG. If set to false, the refresh token will be used to verify password change.Default: falseRange: —

Should Use LDAP For Password Change Checking

booleanWhen verifying local password matches cloud password in the background, use Google LDAP. If set to false, the refresh token will be used to verify password change.Default: falseRange: —
resourcestring

ROPG Resource

stringResource URL when using ROPG. Typically needed only for Azure. Common value is https://graph.microsoft.comDefault: —Range: —

ROPG Response Value

stringWhen a ROPG request is completed successfully to verify password, it may return an error that two factor is required. Add the string that is returned for the JSON response. For Azure, it is typically interaction_required. For Okta, the response is usually {"error":"invalid_grant","error_description":"Resource owner password credentials authentication denied by sign on policy."} Can be a string or an array of strings.Default: "interaction_required"Range: —

Hide If Path Exists

stringDon't show the UI if this key is defined and a file or folder exists at this path.Default: —Range: —
aliasNamestring

Alias Name

stringName of OIDC claim that contains an alias to add to a user account. Usually this is the "upn" (eg syd@twocanoes.com) so the user can log in at the standard login window the same as the IdP login window. Adds the value to record name of the user account as an alias.Default: —Range: —

Automatically Refresh Login Window (seconds)

integerTimer for automatically refreshing login screen in seconds. If set to 0, does not automatically refresh.Default: 0Range: —

Cloud Login Text

stringText for return to cloud login on Mac login screenDefault: "Cloud Login"Range: —

Show About Menu

booleanShow the About Menu item menu. Default value: trueDefault: trueRange: —

Skip FileVault Login

booleanSkip FileVault login during startup if FileVault is enabled. The current username and password are used to tell fdesetup to silently use the credentials during next reboot to unlock FileVault. Passthrough is also disabled and the user will see the XCreds Login Window. To avoid the user being prompted for admin credentials, set the "Login And Background Item Management" management item (com.apple.servicemanagement) to allow teamid UXP6YEHSPW to have background tasks.Default: falseRange: —

Skip FileVault Login as Admin

booleanSkip FileVault authentication at startup if FileVault is enabled. The admin credentials will be used to tell fdesetup to silently use the credentials during next reboot to unlock FileVault. Passthrough is also disabled and the user will see the XCreds Login Window. To avoid the user being prompted for admin credentials, set the "Login And Background Item Management" management item (com.apple.servicemanagement) to allow teamid UXP6YEHSPW to have background tasks. Default value: falseDefault: falseRange: —

Should Show Menu Bar Sign In Without Login Window Sign In

booleanIf the discovery URL is defined and there are no tokens or tickets, the sign in window in the user session will show even if the user did not log in from the XCreds Login WindowDefault: falseRange: —

Refresh Banner Text

stringText at top of window shown in user session when prompting for password.Default: "Log in to verify your cloud credentials. After verification, your local user account password will be set to your cloud password."Range: —

Show Refresh Banner

booleanShow text at the top of the prompt window when tokens expire.Default: trueRange: —

Show Configure WiFi

booleanShow Configure WiFi button in XCreds Login.Default: trueRange: —

Show Shutdown Button

booleanShow Shutdown button in XCreds Login.Default: trueRange: —

Show Restart Button

booleanShow Restart button in XCreds Login.Default: trueRange: —

Show System Info Button

booleanShow Configure System Info in XCreds Login.Default: trueRange: —

Show Preferences on Startup

booleanShow Settings on start if none are defined. Default value: falseDefault: falseRange: —

Should Prompt for Migration

booleanPrompt for local account username and password if no account was mapped and there are standard users already on the system.Default: falseRange: —

Should Allow Key Combo For Mac Login Window

booleanAllow key combo (control-option return) to switch logon window. Use command-option-control-return for Mac Login Window. Default: falseRange: —

Key Code For Login Window Change

integerkey code for shouldAllowKeyComboForMacLoginWindow. If not defined, it is return or enter. If this is defined, this key is used with control-option to switch to login window and command-option-control and this key is used to switch to Mac Login Window. Uses CGKeyCode (for example, enter is 76 and return is 36)Default: —Range: —

Show Mac Login Window button

booleanShow the Mac Login Window button in XCreds Login.Default: trueRange: —

Show Local Only Checkbox

booleanShow the local only checkbox on the local login page Default: trueRange: —

Username Placeholder Text

stringPlaceholder text in local / AD login window for usernameDefault: —Range: —

Password Placeholder Text

stringPlaceholder text in local / AD login window for passwordDefault: —Range: —

Show Support Status Message

booleanShow message in XCreds Login reminding people to buy support.Default: trueRange: —

Show Quit Menu Item

booleanShow Quit in the menu item menu. Default value: trueDefault: falseRange: —

Show Version and Build Number

boolean(Removed in v5.4 and replaced by shouldActivateSystemInfoButton) Show the version number and build number in the lower left corner of XCreds Login.Default: trueRange: —
showDebugboolean

Show Debug Message

booleanShow push notifications for authentication progress. Default value: falseDefault: falseRange: —
usernamestring

Local Username

stringWhen a user uses cloud login, XCreds will try and figure out the local username based on the email or other data returned for the IdP. Use this value to force the local username for any cloud login. Provide only the shortname.Default: —Range: —

Keychain Reset

booleanWhen a local user password does not match the cloud or AD password, this key will allow the user to select a Reset button to set their password to match their AD/cloud password, move their current keychain aside and create a new keychain. If XCreds does not have access to local admin credentials set from the XCreds command line tools, the user will prompted to enter local admin credentials.Default: falseRange: —

Overwrite Password Silently

booleanUpdate the local user password silently to match the cloud / AD password. Requires access to admin credentials. See command line help to set admin username and password.Default: falseRange: —

Hide Expiration

booleanHide AD Expiration even if defined in AD AccountDefault: falseRange: —

Local Admin User Name

stringUsername of local admin user. DO NOT SET THIS IN PREFERENCES. It is recommended to set this with the settingsOverrideScriptPath script. This user is used to reset the keychain if the user forgets their local password and to setup a secure token for newly created users.Default: —Range: —

Local Admin Password

stringPassword of local admin user. DO NOT SET THIS IN PREFERENCES. It is recommended to set this with the settingsOverrideScriptPath script. This user is used to reset the keychain if the user forgets their local password and to setup a secure token for newly created users.Default: —Range: —

Account Locked Password Dialog Title

stringTitle of dialog prompting user to enter in their prior local password when account is locked.Default: "Unlock Account"Range: —

Should Skip Setting Secure Token For Admin

booleanSkip setting a secure token for the local admin user specified in XCreds. The token will be attempted if the local admin does not already have a secure token and a boot strap token is available.Default: falseRange: —

Should Hide SecureToken Status

booleanHide the status of SecureToken users in the popover status viewDefault: falseRange: —

Account Locked Password Dialog Text

stringText of dialog prompting user to enter in their prior local password when account is locked.Default: "The user account is locked. You can wait for the account to unlock or reset the password by clicking the Reset button below."Range: —

Reset Password Dialog Title

stringTitle of dialog prompting user to enter in their prior local password.Default: "Please enter your local login password to sync your cloud password and login."Range: —

System Info Button Title

stringThe title of the button for system info in the bottom right corner of the login screen. This can either be plain text or one of these special values: .os, .hostname, .ipaddress, .serial, .mac, .computername, .ssid. Using the special value will populate the associated information as the button title.Default: "System Info"Range: —

Verify Cloud Password

booleanWhen cloud password is changed and the local keychain password and local user account needs to be changed, a verification dialog can be shown to verify the password. Default value: trueDefault: trueRange: —

Should Detect Network To Determine Login Window

booleanCheck if network is up. If not, select username and password login window.Default: falseRange: —

IDP Host Name

stringHostname of the page that has the password field. When the user submits the form, XCreds will use idpHostName to identify a page it needs to look for the password field. The password value is identified by an HTML id defined by passwordElementID. If this value is not defined. XCreds will look for login.microsoftonline.com and accounts.google.com. This value is commonly set for other IdP’s and for Azure environments that use ADFS.Default: —Range: —

IDP Host Names

arrayarray of hostnames of the page that has the password field.Default: —Range: —
string—Default: —Range: —

Additional AD Domains

arrayarray of additional AD domains to acceptDefault: —Range: —
Domainstring
string—Default: —Range: —

CCID Slot Name

stringName of slot for CCID reader for reading RFID cardsDefault: —Range: —

Should Allow Login Card Setup

booleanIf an unknown RFID card is tapped, show option to pair with local account.Default: trueRange: —

AD User Attributes To Add To Local User Account

arrayarray of AD user attributes to add to local directory user accountDefault: —Range: —
string—Default: —Range: —

Password Element ID

stringPassword element id of the html element that has the password. It is read by using JavaScript to get the value (for example, for Azure, the JavaScript document.getElementById('i0118').value is sent. If this default is not set, standard values for Azure and Google Cloud will be used. To find out this value, use a browser to inspect the source of the page that has the password on it. Find the id of the textfield that has the password. Fill in the password and then open the JavaScript console. Run: document.getElementById('passwordID').value changing "passwordID" to the correct element ID. If the value you typed into the textfield is returned, this is the correct ID.Default: —Range: —

First Name OIDC Mapping/AD Attribute

stringLocal DS to OIDC/AD Mapping for First Name. Default value: "given_name" (OIDC), "givenName" (AD). map_firstname should be set to an OIDC claim/AD Attribute for first name.Default: "given_name"Range: —

Last Name OIDC Mapping

stringLocal DS to OIDC/AD Mapping for Last Name. Default value: "family_name" (OIDC), "sn" (AD). map_lastname should be set to an OIDC claim for last name.Default: "family_name"Range: —

Full Name OIDC Mapping/AD Attribute

stringLocal DS to OIDC/AD Attribute Mapping for Full Name. Default value: "name"(OIDC), "displayName" (AD). map_fullname should be set to an OIDC claim/AD Attribute for full name.Default: "name"Range: —

Username OIDC Mapping/AD Attribute

stringLocal DS to OIDC Mapping/AD Attribute for Name. Default value: "name" (OIDC), "userPrincipalName" (AD). map_username should be set to an OIDC claim/AD Attribute for name. The macOS username will be set as the portion of this value before an @ symbol if present.Default: "name"Range: —

Full Username OIDC Mapping/AD Attribute

stringLocal DS to OIDC Mapping for Full Username (for example, freddy@twocanoes.com) Default value: "unique_name". map_username should be set to an OIDC claim for full username.Default: "name"Range: —
map_uidstring

Map UID

stringLocal DS to OIDC Mapping/AD Attribute for UID at initial user creation. If not set, the uid will be set to the next available. If the mapped UID is used, login will fail.Default: —Range: —

Primary Group ID

stringPrimary Group ID when creating a new user. Default value 20.Default: "20"Range: —

Map OIDC claim to Password Expiry in Seconds

stringPassword expiry mapping to claim. If this value is set to an OIDC claim, the value in that claim should be the number of seconds from the token issued time (iat) to the expiry date. Default: "pwd_exp"Range: —

Override Script Path

stringScript to override defaults. Must return valid property list with specified defaults. Script must exist at path, be owned by _securityagent and writable and executable only by _securityagent.Default: "name"Range: —

UPN Suffix To Domain Mappings

arrayIn some Active Directory environments, users do not use username@domain to login; they use a UPN suffix to make the username easier to use. This setting maps the UPN suffix to the correct AD domain name. For example, if you have an AD domain of foo.com but want users to sign in as user@bar.com, a UPN suffix of foo.com is created in AD and the user account is set to user@foo.com. This setting then would map foo.com to bar.com by setting the key upn to foo.com and the domain key to bar.com.Default: —Range: —
dict
dict—Default: —Range: —
upnstring

UPN

stringUPNDefault: —Range: —
domainstring

domain

stringdomainDefault: —Range: —
Sharesarray

Shares

arrayAdd menu item and mount/automount sharesDefault: —Range: —
dict
dict—Default: —Range: —
Namestring

Name

stringName of share to show in menuDefault: —Range: —
URLstring

URL

stringURL for share (eg smb://server.example.com/share)Default: —Range: —
Groupsarray

Groups

array—Default: —Range: —

ConnectedOnly

booleanAllow mounting only if network connection is detectedDefault: —Range: —
AutoMountboolean

AutoMount

booleanAutomatically mount when XCreds startsDefault: —Range: —

Home Mount Enabled

booleanShow and mount home directory from AD profile if defined.Default: trueRange: —

Home Append Domain

booleanAppend the domain name to the share defined in the profile.Default: falseRange: —

Share Menu Item Name

stringName for Shares menu item. Default: "Shares".Default: —Range: —

Should Allow Empty Local Password

booleanAllow local user with empty password to log inDefault: falseRange: —