Commit Graph
26237 Commits
Author SHA1 Message Date
Edoardo Spadolini bcffdcbfd6 session-helper: move the sftp subcommand to reexec.RunAndExit (#65392)
* Split the approver map away from FileTransferRequest

* Move or copy files in session/reexec/sftputils and session/reexec/reexecsftp

* Split up copied files and clean up the new session packages

* Use custom types for SFTP audit log events

* Clean up imports and run sftp in RunAndExit

* Finish renaming types and functions

* Streamline reexec in main and tests

* Add test with the legacy SFTP event implementation
2026-04-15 13:28:27 +00:00
Paul Gottschling b2c7a20e20 Add noninteractive step to IAM joining guide (#65282)
Make it easier for an agent to follow the IAM joining guide by adding
interactive instructions to the step that currently lacks them, Step 1.
2026-04-15 13:08:41 +00:00
Dan Upton cfa9901bd4 Beams service dependencies (#65524)
* Add cache collection for beams

* Add protobuf definitions for `BeamService`

* Expose method for building bot user and role

* Add constants for beam labels

* Wire up the delegation sessions service

* Add `IterateBeams` method to `BeamReader` interface

* Add filters message to `ListBeamsRequest`

* Fix `BeamAliasLabel` doc comment

* Clarify that filters are ANDed together

* Fix constant godoc comment

* Add test coverage for `GetBeamByAlias`

* Fix import formatting
2026-04-15 12:51:36 +00:00
Steven Martin 522ca48f06 Fix example README links to docs (#65139) 2026-04-15 12:25:31 +00:00
Paul Gottschling 5a11fd8518 Refactor DNS step in Community Edition guide (#65287)
Move DNS requirement into the Prerequisites section and renumber the
steps accordingly. This is a more appropriate section, since there are
no example commands to follow and the precise steps depend on the
reader's DNS solution.

This change also removes a source of friction (for both human and agent
readers), since there is no longer a potentially surprising need to
create external resources for which the guide offers no instructions.
Using a local Docker container is a clearer alternative to creating DNS
records.
2026-04-15 12:18:02 +00:00
Luke Okraszewski 77530b0d03 [docs] correct bench command (#65776)
This is a correction for changes merged in #62485

The correct command is `tsh bench web sessions`
2026-04-15 11:37:56 +00:00
Luke Okraszewski 34b81bdee7 [docs] add agent resource sizing guidance (#62485) 2026-04-15 09:59:20 +00:00
Maja a844145510 Connect: Make menu bar action reliably show app window (#65705)
* Make `showWindow` reliably focus on the app window

* Clean up callsites of showWindow
2026-04-15 08:57:04 +00:00
dependabot[bot] 957dbda6d5 Bump github.com/sigstore/timestamp-authority/v2 from 2.0.4 to 2.0.6 (#65732)
Bumps [github.com/sigstore/timestamp-authority/v2](https://github.com/sigstore/timestamp-authority) from 2.0.4 to 2.0.6.
- [Release notes](https://github.com/sigstore/timestamp-authority/releases)
- [Changelog](https://github.com/sigstore/timestamp-authority/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sigstore/timestamp-authority/compare/v2.0.4...v2.0.6)

---
updated-dependencies:
- dependency-name: github.com/sigstore/timestamp-authority/v2
  dependency-version: 2.0.6
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-14 21:30:08 +00:00
Alan Parra 2e39551e1e Add override certificate validation (#65715) 2026-04-14 20:55:05 +00:00
Andrew LeFevre cee8aba4cb update SSH SELinux module to work with cilium/ebpf (#65049)
Also ensure the specified Teleport binary has the proper context
restored when using the SELinux module install script.
2026-04-14 20:44:49 +00:00
Adam Pickering 0ea6a8f6a8 Improve --help output for tsh, tctl, tbot, teleport-update and teleport (#64122)
* Write CLI --help text to stdout instead of stderr

* Display only one level of subcommands in help text

* Prevent a hidden command from increasing indentation level

* Add entry to changelog explaining updates to --help output
2026-04-14 19:39:34 +00:00
rhammonds-teleport d563443346 Desktop Access: Support Shared Directory Removal (Backend only) (#65101)
* Add support for removing shared directories to Windows Desktop Service (TDPB only)

* Advertise support for shared directory removal

* Gracefully handle unknown device errors when removing RDPDR devices, but log a warning as this is probably caused by a bug.
2026-04-14 18:45:00 +00:00
Alan Parra 4ddbf66552 chore: Bump e/ (#65756) 2026-04-14 18:12:13 +00:00
Dan Upton 4860cf3c6b Add DelegationSessionService.GenerateCerts RPC (#64897)
* Add `DelegationSessionService` protobuf definition

* Implement `GenerateCerts` RPC

* Prevent restricted delegation sessions from inheriting administrative privileges

Previously, the `resources` list on a delegation session would restrict regular
access to resources that weren't explicitly included, but not administrative
actions.

Now, we explicitly deny all administrative (rule-authorized) actions for
delegation sessions unless you include a wildcard in `resources`.

* Only permit list/read/readnosecrets for allow-listed resource kinds

* Fix reused extension OID

* Add a small amount of tolerance for clock skew

* Make the "expires must be in the future" message clearer

* Fix linter errors

* Access to a windows desktop implies access to the desktop service

* Add `DelegationSessionID` to the decision package's `SSHIdentity` and `TLSIdentity`

* Wrap `ExtractConditionForIdentifier` for delegation sessions too

* Prevent calling `GenerateCerts` inside a delegation session

* No need for indirection with GenerateUserCerts method now

* Fix import ordering

* Stop delegation service from returning CA certificates

Per @strideynet's request, to avoid replicating existing bad patterns around
conflating the user and host CAs.

* Error messages should start with lowercase letters

* Add `RouteToKubernetes` wrapping message

* Replace expires parameter with TTL

* Remove unnesasary error check

* Fix `AgentScope` extension type assertion
2026-04-14 16:47:32 +00:00
Andrew LeFevre 9eab44a7e4 Improve Enhanced Session Recording flakiness (#64583)
* ensure all bpf events are processed before stopping, refactor tests a bit to make the stress test much more consistent

* prevent startSession/endSession blocking during shutdown

* make lost event tracking in tests work correctly between sub-tests

* Remove accidental extra wg.Wait call

* simplify LostEventTracker

* improved log message and switched to use a time.Timer

* fix not building without bpf tag

* drop events if the buffer is full
2026-04-14 15:29:57 +00:00
Maja 361553cac2 Remove nested Oxlint config for teleterm (#65691) 2026-04-14 15:19:43 +00:00
Maja 414d5e75ac Add MDM token to "Token resource reference" and "Supported token types" (#65696) 2026-04-14 14:03:47 +00:00
dependabot[bot] 1b8721196d Bump helm.sh/helm/v3 from 3.19.1 to 3.20.2 (#65666)
Bumps [helm.sh/helm/v3](https://github.com/helm/helm) from 3.19.1 to 3.20.2.
- [Release notes](https://github.com/helm/helm/releases)
- [Commits](https://github.com/helm/helm/compare/v3.19.1...v3.20.2)

---
updated-dependencies:
- dependency-name: helm.sh/helm/v3
  dependency-version: 3.20.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-14 13:13:06 +00:00
Steven Martin d8259263f7 Update error messages to remove duplicate strings (#65740)
* Update error messages to remove duplicate strings

* Update test wantErr to remove duplicate string in error message
2026-04-14 12:55:22 +00:00
Luke Okraszewski 9dab68860a [doc] update firestore readme (#64673)
The build tag no longer exists, remove
the outdated section.
2026-04-14 12:40:23 +00:00
dependabot[bot] f367ef8706 Bump rand from 0.9.2 to 0.9.3 (#65737)
Bumps [rand](https://github.com/rust-random/rand) from 0.9.2 to 0.9.3.
- [Release notes](https://github.com/rust-random/rand/releases)
- [Changelog](https://github.com/rust-random/rand/blob/0.9.3/CHANGELOG.md)
- [Commits](https://github.com/rust-random/rand/compare/rand_core-0.9.2...0.9.3)

---
updated-dependencies:
- dependency-name: rand
  dependency-version: 0.9.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-14 12:20:02 +00:00
Lisa Kim 8396c08d72 tfgen: add support for depends_on meta argument (#65617)
* tfgen: add support for depends_on meta argument

* Support multiple WithDependsOn

* Apply code review
2026-04-14 00:27:55 +00:00
Chris Thach b8498e7ead Make Renovate use GitHub app token to allow it to create PRs (#65531)
* Make Renovate use GitHub app token.

Signed-off-by: Chris Thach <[email protected]>

* Use test branch to test Go upgrade.

Signed-off-by: Chris Thach <[email protected]>

* Use repo name without owner.

Signed-off-by: Chris Thach <[email protected]>

* Try force override to test with test branch.

Signed-off-by: Chris Thach <[email protected]>

* Revert "Use test branch to test Go upgrade."

This reverts commit bc1de8ccae.

* Revert "Try force override to test with test branch."

This reverts commit 3b35992553.

* Add teleport-renovate[bot] to CLA allowlist.

Signed-off-by: Chris Thach <[email protected]>

---------

Signed-off-by: Chris Thach <[email protected]>
2026-04-13 21:11:15 +00:00
Lion Chen 4c00e5e48d Web: show AWS IC denied access status with guidance (#64906) 2026-04-13 20:53:36 +00:00
Gavin Frazar 95809e41d9 Update AWS Discovery Terraform module (#65679)
* fix role trust policy when `trust_role` is set
* fix `for` expressions that range over a null value, which is not
  supported in terraform v1.5.7
* fix broken validation block condition to catch
  `use_oidc_integration=false` when `trust_role` is not set
* fix nonsensitive(null) warning when `create=false`
* set nullable=false for match_aws_* variables
* add a precondition to enforce `use_oidc_integration=true` when using
  `teleport_discovery_group_name="cloud-discovery-group"`, because cloud
  cluster discovery services must use OIDC credentials
* describe the allowed values for var.aws_matchers.types
2026-04-13 19:50:32 +00:00
williamong-tel 0a3650c55b Adjust ping endpoint (#65710)
* Adjust ping endpoint

Update webclient.go

* Update to put scopes under auth

Update webclient.go
2026-04-13 19:12:31 +00:00
Chris Thachandrosstimothy 3b28078920 Register ValidatedMFAChallenge resource to cache. Add generic watcher for leaf cluster replication. (#65437)
* Add ValidatedMFAChallenge filter type and event matching.

Signed-off-by: Chris Thach <[email protected]>

* Add ValidatedMFAChallenge to events so it can be replicated.

Signed-off-by: Chris Thach <[email protected]>

* Revert cache changes.

Signed-off-by: Chris Thach <[email protected]>

* Don't match if target cluster is empty.

Signed-off-by: Chris Thach <[email protected]>

* Register ValidatedMFAChallenge resources into event stream. Add resource watcher.

Signed-off-by: Chris Thach <[email protected]>

* Simplify changes.

Signed-off-by: Chris Thach <[email protected]>

* Revert "Simplify changes."

This reverts commit 7aa2c34838.

* Bring back types adapter and add cases to events.go.

Signed-off-by: Chris Thach <[email protected]>

* Return wrapped resource.

Signed-off-by: Chris Thach <[email protected]>

* Apply suggestion from @rosstimothy

Co-authored-by: rosstimothy <[email protected]>

* Remove unused.

Signed-off-by: Chris Thach <[email protected]>

---------

Signed-off-by: Chris Thach <[email protected]>
Co-authored-by: rosstimothy <[email protected]>
2026-04-13 18:45:16 +00:00
Travis Rodgers 1d1c2f5ade docs: updated code block format (#65704)
This commit updates the format of a yaml code block from `code` to
`yaml` for readability.
2026-04-13 18:13:15 +00:00
Tiago Silva 04722c9957 docs: fix cert_authority resource name in CA rotation guide (#65576)
The CA rotation guide referenced `certificate_authority` as the resource
name for RBAC rules, but the correct resource kind is `cert_authority`.

Fixes #65575

Signed-off-by: Tiago Silva <[email protected]>
2026-04-13 18:00:01 +00:00
Travis Rodgers f7437f99e9 docs: remove checkpoint from Windows guide (#65327)
This commit removes the first checkpoint from this guide.

These checkpoints display troubleshooting tips when a user clicks "No it
didn't work." However, the first checkpoint title of "Confirm that the
Windows computer has restarted and the Teleport authentication package
is loaded" can't be done without knowing the troubleshooting tip that is
only displayed when the "No, it didn't work" is clicked. Given this, and
the fact that there is only one troubleshooting step, it seems better to
remove this checkpoint altogether and mention the check after restarting the computer, instead.

This commit is addressing
https://github.com/gravitational/teleport/issues/65135
2026-04-13 17:52:17 +00:00
Maja 5b6e14f86b DocumentCluster: Don't fetch user prefs until cluster is connected (#65693)
* DocumentCluster: Don't fetch user prefs until cluster is connected

* UnifiedResources.test.tsx: Add leaf cluster to state
2026-04-13 17:19:44 +00:00
Ryan Clark 933f9f3c10 Fix flakey authentication in webkit e2e tests (#65642)
* Remove redundant assertion

* Run at maximum two teleport and test suites at any one time

* Stop teleport if there are any errors during start
2026-04-13 17:02:33 +00:00
Michael edb3677dc1 Update e (#65707) 2026-04-13 16:25:20 +00:00
Noah Stride 3942b2216c Update docker/docker to moby/moby (#65643)
* Update docker dependency to moby v1.29

* go mod tidy all

* Update go.mod

* Fix up linting issues

* Fix cosign test broken due to ssrf protections in patched go-containerregistry
2026-04-13 16:20:47 +00:00
rhammonds-teleport 31fa3b7941 fix typo leading to initializing RDP client with incorrect screen width (#65660) 2026-04-13 15:11:16 +00:00
STeve (Xin) Huang 8f8ca00ce7 pgx migration: all places outside engine + test server (#65596)
* pgx migration: all places outside engine

* tidy

* fix ut ...

* add test server
2026-04-13 14:31:23 +00:00
Tiago Silva 60a7e68e07 sessionsearch[9]: add session search proto definitions for Auth and Access Graph (#64711)
Adds two proto files that together define the session summary search
feature.

  proto/accessgraph/v1/session_search.proto — internal, Auth->Access Graph
    Used exclusively by the Auth server. Defines SessionRecordingService
    with two RPCs:
      - SearchSessionSummaries: a bidirectional streaming RPC the Auth
        server uses to paginate through session summaries stored in the
        Access Graph. The Auth server sends search_params on the first
        message, receives batches of SessionSummary results each
        terminated by a PageComplete, and sends FetchMore to advance pages.
        Each SessionSummary includes session_end_event — the raw audit
        event the Auth server evaluates against the requesting user's RBAC
        permissions before deciding whether to forward the result to client.
      - StoreSessionSummary: used by the summarizer pipeline to persist
        session summaries and their vector embeddings to the Access Graph.

  api/proto/teleport/sessionsearch/v1/session_search.proto — public, Client->Auth
    Used by Teleport clients (tsh, web UI handler, etc.). Defines
    SessionSearchService.SearchSessionSummaries as a unary-request /
    server-streaming RPC. The Auth server implements this service: it
    receives the client's filter criteria, fans out to the Access Graph
    via the internal bidi stream above (handling all pagination
    internally), filters each result using session_end_event, and streams
    only the permitted SessionSummary results back. Clients see a single
    continuous stream with no pagination mechanics exposed to them.

Signed-off-by: Tiago Silva <[email protected]>
2026-04-13 13:27:12 +00:00
Tiago Silva 43e372c148 sessionsearch[6]: add TestRetrievalModel RPC to SummarizerService (#64672)
Adds a TestRetrievalModel RPC to SummarizerService, mirroring the existing
TestInferenceModel

Signed-off-by: Tiago Silva <[email protected]>
2026-04-13 12:43:13 +00:00
Noah Stride 591bfc8e2f Support enterprise/enterprise_id in github join method (#65655)
* Support enterprise_id/enterprise in gha

* Update various IaC

* Update reference

* Add explicit warning to docs and update reflect_legacy_test
2026-04-13 12:10:42 +00:00
Tiago Silva f906ba7b01 sessionsearch[3]: wire summarizer resources into the cache layer (#64560)
Adds cache support for all summarizer resources (InferenceModel,
InferenceSecret, InferencePolicy, and RetrievalModel) by implementing
event parsers, cache collections, and read-through methods.

Part of https://github.com/gravitational/teleport.e/pull/8046

Signed-off-by: Tiago Silva <[email protected]>
2026-04-13 11:59:46 +00:00
Tiago Silva e005029bd6 sessionsearch[2]: implement RetrievalModel CRUD backend service (#64558)
Adds the RetrievalModel singleton resource, which configures the
embeddings provider and inference model used for session search.

Part of https://github.com/gravitational/teleport.e/pull/8046

Signed-off-by: Tiago Silva <[email protected]>
2026-04-13 11:13:11 +00:00
Steven Martin 2ad0ed6205 Update CONTRIBUTING.md (#65682) 2026-04-13 10:32:44 +00:00
Tiago Silva 295edcf34d sessionsearch[1]: add RetrievalModel resource and CRUD RPCs to SummarizerService (#64554)
Introduces the RetrievalModel proto resource, which configures the
embeddings provider (OpenAI or Amazon Bedrock) and inference model used
for session search. Adds Create/Get/Update/Upsert/Delete RPCs to
SummarizerService.

Part of https://github.com/gravitational/teleport.e/pull/8046

Signed-off-by: Tiago Silva <[email protected]>
2026-04-13 10:27:46 +00:00
Dan Share b05a3a7986 Fix wording of desktop access keyboard layout test plan (#65658) 2026-04-13 06:18:16 +00:00
Julia Ogris 40dfc718e4 app: Fix context leak in handleConnection (#65631)
* app: Fix context leak in handleConnection

Move context creation from handleConnection to its caller
HandleConnection, which unconditionally defers cancel(nil). Pass ctx
and cancel as parameters to handleConnection and remove the cancel
calls that were previously scattered across the TCP, MCP, and HTTP
branches.

Six error return paths in handleConnection created a child context via
context.WithCancelCause but returned without calling cancel, leaving
the child registered in the parent's children map until server
shutdown. Under connection churn this caused monotonic memory growth.

* app: Add comments clarifying context ownership and handler paths

Clarify that HandleConnection owns the context and that
TrackingReadConn may call cancel first with io.EOF. Also clarify
that TCP and MCP handlers block until the session is done, while
the HTTP handler returns immediately after handing the conn to
http.Server.
2026-04-13 00:41:44 +00:00
Tiago Silva 4d68ca8df1 Migrate S3 upload/download to feature/s3/transfermanager (#65565)
Replace deprecated github.com/aws/aws-sdk-go-v2/feature/s3/manager
(Uploader/Downloader) with the new transfermanager package across all
call sites. The old manager types were superceded per
https://github.com/aws/aws-sdk-go-v2/discussions/3306.

Signed-off-by: Tiago Silva <[email protected]>
2026-04-12 09:04:43 +00:00
Steven Martin 717f0c3c4c Update Redis docs url in auth command (#65246) 2026-04-11 16:23:47 +00:00
rob-picard-teleport 909f8a666e Update AGENTS.md to refer to docs and drop bold formatting (#64390)
* Update AGENTS.md to refer to docs and drop bold formatting

* Remove no-LLM code instruction, causing weird agent behavior

* remove another meta line
2026-04-11 14:08:47 +00:00
Roman Tkachenko 17446b130e Add teleport-acl-review skill (#65361) 2026-04-10 23:14:20 +00:00