Expression Language attributes for devices
When you use the Okta Expression Language (EL) to create a custom expression for devices, you reference attributes that exist in the Okta Device Profile.
Some attributes aren't available for all devices, such as device.profile.imei, device.profile.meid, device.profile.serialNumber, and device.profile.udid.
You can use ChromeOS only with the device.profile.platform attribute.
The following table lists the device profile attributes.
|
Attribute name and type |
Description |
Examples |
|---|---|---|
|
Type: String |
Obtains the value of the device's screen lock type. |
|
|
Type: String |
Identifies the app that you allowed to invoke Okta FastPass. |
Examples: The exact binary identifiers for apps can be found in your System Log. (macOS, Windows) |
|
Type: String |
Obtains the binding method that's used for authentication. |
|
|
Type: String |
Indicates whether the binary is signed. |
Returns |
|
Type: String |
Obtains the value of the device's version of Okta Verify. Use the Use |
CAUTION:
Don't use the For example, |
|
Type: String |
Obtains the value of the device profile's disk encryption type. |
|
|
Type: String |
Obtains the value of the device profile's display name attribute. 4-byte UTF-8 characters aren't supported. |
|
|
Type: String |
Obtains the value of the device profile's International Mobile Equipment Identity (IMEI) attribute. |
|
|
Type: Boolean |
Indicates whether a debugger has been detected. |
|
|
Type: Boolean |
Indicates whether the device runs as an emulator. |
|
|
Type: Boolean |
Indicates whether internal functions or runtime hooks have been detected. |
|
|
Type: Boolean |
Indicates if the mobile device has been jailbroken or rooted. |
|
|
Type: Boolean |
Indicates if an unknown third party repackaged the mobile device app. |
|
|
Type: Boolean |
Obtains the value of the device profile's managed attribute. This can only be used when Device Trust is enabled or if the DEVICE_CONDITION_IDX_ADVANCED feature is enabled. |
|
|
Type: String |
Obtains the value of the device profile's manufacturer attribute. |
|
|
Type: String |
Obtains the value of the device profile's Mobile Equipment Identifier (MEID) attribute. |
|
|
Type: String |
Obtains the value of the device profile's model attribute. |
|
|
Type: String |
Obtains the value of the device profile's operating system version attribute. Use |
CAUTION:
Don't use the For example, |
|
Type: String |
Obtains the value of the device profile's operating system. |
|
|
Type: Boolean |
Obtains the value of the device profile's registered attribute. |
|
|
Type: Boolean |
Obtains the value of the device profile's secure hardware present attribute. This checks for chip presence, in the form of a Trusted Platform Module (TPM) or Secure Enclave. It doesn't check whether there are tokens on the secure hardware. |
|
|
Type: String |
Obtains the value of the device profile's serial number attribute. |
|
|
Type: String |
Obtains the value of the device profile's security identifier (SID) attribute. This is only available with Windows devices. |
|
|
Type: String |
Obtains the value of the device profile's Trusted Platform Module (TPM) public key hash attribute. |
|
|
Type: String |
Obtains the value of the device profile's unique device ID (UDID) attribute. This is only available with certain managed scenarios. |
|
Operators
Use operators in your custom expression to handle decisions. Any Okta Expression Language operator can be used in a custom expression. The following table lists commonly used operators:
| Operator | Description |
|---|---|
&&
|
Signifies an AND function. |
||
|
Signifies an OR function. |
!
|
Signifies a NOT function. |
<, >, <=, and >=
|
Signifies relational operators. |
==
|
Checks for equality. |
!=
|
Checks for inequality. |
See Okta Expression Language for a complete list of Okta Expression Language functions.
Important considerations
- Always include
device.profile.registered == trueif you want to include device conditions in your custom expression. - In general, device attributes can only be used if Okta FastPass is enabled.
- Device attributes can only be evaluated if Okta Verify is installed.
Related topics
Add a custom expression to an app sign-on policy