Teleport’s Just-in-Time (JIT) Access Requests let you implement the principle of least privilege at every layer. Users operate day-to-day with a minimal role set, and when they need elevated access — to a production database, a privileged Kubernetes namespace, or an admin role — they submit a time-bound request that one or more approvers must review. Access Requests support two patterns: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.
- Role Requests: A user requests one or more Teleport roles (e.g.,
dba,k8s-admin). - Resource Requests: A user requests access to a specific infrastructure resource (a particular server, database, or Kubernetes cluster).
How Access Requests work
Define requestable roles
A Teleport administrator creates the roles a user can request and the role that permits approval. Users are assigned a base role that explicitly names the roles they are allowed to request.
User submits a request
The user runs
tsh request create or uses the Teleport Web UI to submit a request, optionally providing a reason and specifying a maximum duration for elevated access.Approvers are notified
Reviewers receive a notification — via the Web UI, Slack, PagerDuty, or another plugin — and examine the request. Approvers can inspect which resources the requested role would grant access to before approving.
Request is approved or denied
An approver runs
tctl requests approve or clicks Approve in the Web UI. Teleport can require multiple approvals before granting access.User assumes elevated access
The user re-issues their login with the approved request ID to obtain short-lived certificates that include the elevated roles. Roles are additive — the user keeps their base roles and gains the requested ones.
RBAC setup
The following example defines three roles:contractor, dba, and approver.
The requesting role
Users assignedcontractor can request the dba role:
The target role
Thedba role grants broad database access but enforces a short session TTL:
The approver role
Users with theapprover role can review requests for the dba role:
Submitting a request
Users can create requests from the CLI:Approving and denying requests
Approvers can act from the CLI or the Teleport Web UI (Identity Governance → Access Requests → Needs Review).Using an approved request
Once approved, the requesting user re-logs in with the request ID to obtain elevated certificates:Auto-expiry of elevated access
Elevated access expires automatically based on the lowest value of:request.max_durationset in the requesting role- The
--max-durationflag passed at request creation time - The
options.max_session_ttlof the requested role - The remaining TTL in the user’s current Teleport session
Teleport does not allow users to approve their own requests. This is enforced by the Auth Service regardless of role configuration.
Access Request plugins
Teleport provides notification and approval plugins so reviewers can act from the tools they already use:Slack
Receive request notifications and approve/deny from Slack.
PagerDuty
Route access requests to on-call engineers automatically.
Jira
Create Jira issues for each request and approve from the ticket.
Opsgenie
Notify and approve requests via Opsgenie alerts.
Microsoft Teams
Receive and approve requests in Teams channels.
ServiceNow
Integrate request approvals into ServiceNow workflows.
Review thresholds
You can require multiple approvals before a request is granted — for example, two out of three members of thedba-approvers group must approve:
Next steps
RBAC
Learn how allow/deny rules and role templates work.
SSO
Map IdP group membership to requestable Teleport roles.
MFA
Require MFA at login and per session for elevated roles.
Device Trust
Enforce that only registered devices can access sensitive resources.
