Teleport Device Trust ensures that only known, registered devices can access your infrastructure — not just authenticated users. Even if an attacker obtains a user’s credentials or certificates, they cannot open a session to a protected resource without the private key that lives inside the device’s Secure Enclave (macOS) or Trusted Platform Module (TPM) on Windows and Linux. Device Trust adds a third dimension to Teleport’s security model: who the user is (identity), what they can access (RBAC), and now which device they are using.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/gravitational/teleport/llms.txt
Use this file to discover all available pages before exploring further.
How Device Trust works
Trusted device enforcement requires two things to be configured:- Device registration: The device is added to Teleport’s inventory (manually via
tctlor automatically via an MDM integration). - Device enrollment: The device completes a cryptographic ceremony that creates a private key in the device’s secure hardware and registers its public key with the Teleport Auth Service.
TPM-based attestation (Windows and Linux)
On Windows and Linux, Teleport uses the Trusted Platform Module (TPM) to perform an attestation — a signed statement about the device’s hardware state. The attestation is signed by a key that never leaves the TPM, so Teleport can verify both that the request came from a specific physical device and that the device is in a known-good state.Secure Enclave attestation (macOS)
On macOS, Teleport stores a device private key in the Secure Enclave and uses it to sign device challenges. The Secure Enclave prevents the key from being exported, ensuring that only that specific Mac can satisfy the challenge.Device Trust enforcement modes
Device Trust operates in four modes, controlled by thedevice_trust_mode setting:
| Mode | Behavior |
|---|---|
off | Device authentication is disabled. No device data appears in audit logs. |
optional | Devices are authenticated and device data appears in audit logs, but unregistered devices are still permitted. |
required | All SSH, database, and Kubernetes sessions require a trusted device. Unregistered devices are rejected. |
required-for-humans | Same as required, but bot/machine users are exempt. |
Role-based device enforcement
Apply device trust to specific roles using thedevice_trust_mode option. This is the recommended approach when you want to enforce trusted devices only for access to sensitive environments.
Cluster-wide device enforcement
To require trusted devices for all users across all resources in the cluster, update thecluster_auth_preference:
Device registration
Device registration adds a device to Teleport’s inventory. It is an administrative step, equivalent to IT running an asset register.Manual registration
Auto-enrollment
When auto-enrollment is enabled, a device that is already registered automatically completes enrollment on the user’s nexttsh login — no enrollment token needed.
Enable auto-enrollment in the cluster settings:
Device enrollment
Enrollment creates the secure hardware key on the device and registers its public key with Teleport. Enrollment must be performed on the physical device being enrolled.Manual enrollment flow
Generate an enrollment token
A device administrator creates a time-limited enrollment token for the device:
Send the token to the user
Deliver the token to the user via a secure channel (corporate chat, email, or in person).
Self-enrollment for editors and device admins
Users with the preseteditor or device-admin role can register and enroll their own current device in a single step:
MDM integrations
For organizations managing fleets of devices, Teleport integrates with leading Mobile Device Management (MDM) solutions to automatically sync device inventories.- Jamf Pro
- Microsoft Intune
Teleport’s Jamf Pro integration periodically reads your Jamf device inventory and syncs it to Teleport. It supports macOS computers and optionally iOS/iPadOS mobile devices.The Teleport Jamf service performs both incremental (partial) and full syncs, and removes devices from the Teleport inventory when they are retired from Jamf.How it works: The Jamf service is a dedicated
teleport process (or a hosted plugin in Teleport Enterprise Cloud). It authenticates to Jamf using API credentials with the Read Computers privilege and calls tctl devices add on your behalf for each discovered device.Setup overview:- Create a Jamf API role with
Read Computersprivilege and generate a client ID and secret. - Configure the Teleport Jamf service with your Jamf API endpoint, client ID, and client secret.
- Start the service and verify the device inventory is synced with
tctl devices ls.
MDM integrations handle device registration (inventory management) only. Users must still complete device enrollment to establish the secure hardware key — unless auto-enrollment is enabled.
Verifying device trust in audit logs
Once device trust is active, session audit events include device metadata:Next steps
RBAC
Combine device enforcement with label-based role policies.
MFA
Layer per-session MFA on top of device trust for defence-in-depth.
Access Requests
Require both a trusted device and an approved request for the most sensitive resources.
SSO
Integrate IdP identity with device-aware access policies.
