Commit Graph
23338 Commits
Author SHA1 Message Date
Przemko Robakowski 392a834663 Update docs for NLA in FIPS mode (#57310) 2025-07-30 14:32:55 +00:00
Paul Gottschling 653f088f03 Make minor edits to SSO guides (#56390)
Closes #16046

In each SSO guide that instructs the user to provide a redirect URL with
the Proxy Service address, indicate that, if there is more than one
Proxy Service address configured in `public_addr`, the user must use the
first address listed.
2025-07-30 14:17:35 +00:00
Cam Hutchison 827b274a42 ci: Move lint-ui workflow into common lint workflow (#57291)
Move the `lint-ui.yaml` workflow into the common `lint.yaml` workflow so
we can use the existing setup with the `dorny/paths-filter` action. This
allows us to remove the bypass workflow and fixes the `merge_group`
trigger to also use paths. The original workflow had paths specified for
the `merge_group` event, but that even does not take a `paths` field.

This fixes a bug where the lint-ui workflow does not run on a PR, but
does run in the merge queue, even if none of the UI workflow files
changed.
2025-07-30 12:00:08 +00:00
Przemko Robakowski c16ee3cd6a Disable NLA in FIPS mode (#54048)
* Disable NLA in FIPS mode

* Disable NLA in FIPS mode

* lint
2025-07-30 10:08:09 +00:00
Nick Marais 30b4500250 feat(web): Add Instances to Bot Details (#57023)
* RPC and cache

* API

* Update rfc0217

* Remove unnecessary copy

* Fix import ordering

* Fix cache bypass issue

* Add context to unmarshal error

* Wrap page_size parse error

* Keep backend range logic consistent

* feat(web): Add Join Tokens panel to Bot Details

* Copy correction

* Remove unneeded alert action

* Handle outdated proxy error

* Extend tests

* Rename

* Use `tokens.list` for access to tokens page (instead of `tokens.create`)

* Add outline label variants

* Add `semver` dep to teleport package

* Add `useClusterVersion` hook

* Expose heartbeat OS

* Add sorting icons

* Add `JoinMethodIcon` component

* Add bot instances to Bot Details

* Missing lock content

* Fix scroll container

* Scroll to top on sort

* Remove unused import

* Extract join method icons to component

* Add mission join token icons/logos

* Use OS logos (update windows)

* Save some lines 😮‍💨

* Unused imports

* Use shared semver

* Fix exhaustive check

* Re-export new Label variants

* Correct version compatibility logic and messaging

* Improve error state UX

* Use `H2`

* Reduce lines

* Reduce lines (more)

* Fix tests and lint

* Fix grid alignment

* Remove unnecessary margin 0

* Clarify roles container

* Improve type safety of sort state

* Remove unnecessary wrappers

* Improve `useClusterVersion`

* Add sorting icons (used later)

* Rename `check()`

* Correct newer version messaging
2025-07-30 08:51:43 +00:00
Rafał Cieślak a3e1860aef Connect: Update link to Device Trust docs (#57257) 2025-07-30 07:43:58 +00:00
dependabot[bot]andTim Ross d608257b3f Bump github.com/docker/docker from 28.3.0+incompatible to 28.3.3+incompatible (#57283)
* Bump github.com/docker/docker

Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.3.0+incompatible to 28.3.3+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v28.3.0...v28.3.3)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.3.3+incompatible
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

* go mod tidy all

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Tim Ross <[email protected]>
2025-07-29 21:28:39 +00:00
rosstimothy 1081ddcb7d Align Identity Center APIs with other resources (#56703)
This is the first in a series of changes to migrate the identity
center APIs away from `lib/utils/pagination` with the end goal
of removing the pagination package entirely.

## Why?

Pagination bugs have been a major problem historically. Having
multiple implementations for iterating pages of resources increases
the chances of a bug. By consolidating our pagination APIs to a
single shape, we can reduce the number of hand rolled implementations
to consume an entire set of pages.

https://github.com/gravitational/teleport/pull/56418 and
https://github.com/gravitational/teleport/pull/56581 have recently
consolidated _most_ consumption of pagination APIs to a single
helper in `api/utils/clientutils`. However, due to the use of
the pagination.NextKey by the Identity Center APIs they need either
special cases, or their own special implementation.

The IdentityCenterAccount and IdentityCenterAccountAssignment wrapper
types are exposed outside of where they are required. They were
added solely for the unified resource cache, and should not have
been included in the APIs for the resources. The unified resource
cache no longer uses the wrappers but they cannot be removed until
the APIs no longer reference them.

## How?

These APIs are consumed in both OSS and Enterprise code which means
they cannot be changed directly without breaking builds. The plan
is to provide equivalent methods with different signatures to allow
the transition to occur over a series of changes.
2025-07-29 20:22:32 +00:00
Edoardo Spadolini e3d9af08f8 Allow io.Reader in ReadProxyLineV2 (#57270)
* Allow io.Reader in ReadProxyLineV2

* ignore staticcheck
2025-07-29 20:05:59 +00:00
Gus Luxton 811846a633 docs: Fix Terraform syntax in SCIM docs (#57274) 2025-07-29 17:36:45 +00:00
rosstimothy e16ae9e2be Remove testing symbols from lib/service (#57262)
`func (*TeleportProcess) GetIdentityForTesting` was the only place
consuming test symbols outside of tests. It existed to allow
`integration.TestInstanceCertReissue` to assert the identity after
certificate reissuance. To avoid this, TestInstanceCertReissue
was moved from integration into lib/service so that it could make
use of the private `(*TeleportProcess) getIdentity` and allow the
`GetIdentityForTesting` to be removed.

Updates #51023.
2025-07-29 16:57:27 +00:00
Przemko Robakowski 457b3f49aa Fix LDAP CRL publication (#57261) 2025-07-29 14:39:48 +00:00
Grzegorz Zdunek a9bb231dc2 Improve auto updates data model (#57215)
* Improve autoupdates data model

* Improve comments

* Give `managing-cluster-unable-to-manage` a higher priority than `no-cluster-with-auto-update`
2025-07-29 10:56:12 +00:00
Cam Hutchison ab8caaff50 ci: Manually install wasm dependencies in lint-ui (#57249)
Use `make ensure-wasm-deps` to install wasm-pack and wasm-bindgen as
wasm-pack often fails to build wasm-bindgen due to it not using
`--locked`. If we pre-install the correct versions, wasm-pack does not
try to build wasm-bindgen.

Make sure the workflow runs if the workflow itself is changed.
2025-07-29 01:44:35 +00:00
Brian Joerger 3d6a703d5c Add depguard for golang.org/x/net/context. (#57240) 2025-07-28 19:27:29 +00:00
Nick Marais e48a86f70d feat(web): Add Join Tokens panel to Bot Details (#56901)
* RPC and cache

* API

* Update rfc0217

* Remove unnecessary copy

* Fix import ordering

* Fix cache bypass issue

* Add context to unmarshal error

* Wrap page_size parse error

* Keep backend range logic consistent

* feat(web): Add Join Tokens panel to Bot Details

* Copy correction

* Remove unneeded alert action

* Handle outdated proxy error

* Extend tests

* Rename

* Use `tokens.list` for access to tokens page (instead of `tokens.create`)

* Extract join method icons to component

* Add mission join token icons/logos

* Fix exhaustive check

* Add sorting icons (used later)
2025-07-28 17:27:06 +00:00
Steven Martin 302b222ee6 docs: update signature confirmation steps for linux install (#56754)
* docs: update signature confirmation steps for linux install

* docs: update shasum command calls format
2025-07-28 17:25:44 +00:00
Bartosz Leper f1fd952166 Add methods to upload session summaries to the upload handler (#56801)
* Add methods to upload session summaries to the upload handler

* Fix gcshandler and its tests

* Fix the UploadHandler interface

* Build fix for external audit storage integration test

* review
2025-07-28 16:05:49 +00:00
Paul Gottschling 168ff33757 Add "How it works" sections to 16 docs guides (#56988)
* Add "How it works" sections to 16 docs guides

In the Teleport documentation, we are standardizing our how-to guides on
including a "How it works" section after the introduction and before the
prerequisites. This ensures that each guide includes an architectural
overview, which allows the reader to form a mental model of the
instructions before following them.

This change adds "How it works" sections to 16 docs guides related to
access controls, infrastructure as code, and Helm deployments.

* Respond to hugoShaka feedback

- Correct the "How it works" section in the Headless WebAuthn guide.
- Expand the "How it Works" section in the EKS, AKS, and GKE deployment
  guides.
- Add a clarification to the "How it works" section of the agentless SSH
  guide.
2025-07-28 15:47:37 +00:00
Travis Rodgers 55f87dded6 updated links to be relative (#57226) 2025-07-28 14:55:43 +00:00
Dan Upton dbb5f478d5 Device Trust: add required-for-humans mode (#56907)
* Device Trust: add `required-human` mode

* Add `device_trust.mode=required-human` to the test plan

* Add `IsBot` methods to TLS and SSH identities

* Fix `required-human` mode on roles

* Rename mode to `required-for-humans` for clarity

* Undo premature changes to device trust guides

* Default `deviceVerificationPassed` false to avoid accidents when adding new modes

* Handle `BotName` and `BotInstanceID` in `lib/auth/authtest`

* Fix stray reference in test

* Fix reference to `config.DestinationMemory`

* Handle empty device trust mode
2025-07-28 12:43:16 +00:00
Bartosz Leper 0a645282d5 OSS layer of the session summarizer (#56551)
* Configuration resources for the session summarizer

* Review

* OSS layer of the session summarizer

- The backend service
- A stub gRPC service which communicates that the feature is only
  available in Enterprise
- e_imports statement that adds an OpenAI client that will be used by
  the enterprise build
- Necessary wiring that allows `ProtoStream` instances to notify
  listeners about upload completion; the accompanying enterprise change
  will use it for triggering summarization

* review

* review

* Rename the resources

* Rename the resources

* Review

* go mod tidy

* lint

* Add response messages

* Add return types to the gRPC server

* Split out the resources gRPC service from summarizer

* Fix CI issues

* Add some comments, fix existing ones

* Remove unnecessary e/ change

* Fix broken lint

* Replace summarizer wrapper with summarizer provider

This fixes a minor race condition, adds some missing unit tests, and
hopefully reduces confusion about the entire concept.

* Fix license and import order

* review

* Clean up tests

* Review

Move code around, switch from atomic pointer to a mutex in the
summarizer provider.

* Fix stream_test

* Review

* Narrow down the number of event types accepted by Summarizer

* Fix tests

* Review

* Review: some renamings
2025-07-28 11:22:57 +00:00
Edoardo Spadolini ac473cb900 Add an optional delay before Teleport shutdown (#57042) 2025-07-28 09:35:57 +00:00
Dan Upton c44fc49487 MWI: Move application output and tunnel to lib/tbot/services/application (#56753)
* Move application output and tunnel to `lib/tbot/services/application`

* Use `LoggerForService` in application services

* Fix stray imports

* Remove unnecessary `bytes.NewBuffer`

* Fix ineffectual assignment
2025-07-28 09:16:41 +00:00
Yassine Bounekhla a12001634b fix ordering of identifier first docs (#57200) 2025-07-28 01:53:31 +00:00
rosstimothy 54d7b63ad8 Bump github.com/go-piv/piv-go/v2 to v2.4.0 (#57199)
Includes https://github.com/go-piv/piv-go/pull/176 which allows
YubiKeys with firmware 5.7.4+ to be used for PIV.

Closes #55959.
2025-07-26 12:44:40 +00:00
STeve (Xin) Huang 3badc07c30 [docs] MCP access follow-ups (#57150) 2025-07-26 01:16:41 +00:00
Bernard Kim f779759a8a RFD 0201 - Automatic review of resource requests (#55752)
* Update RFD 0201

Updates the automatic review RFD with details of resource based
requests.

* Match by label instead of ID

* Add a few more predicate expressions

- Replace has_labels with all_has_labels and some_has_labels.
- Add access_request.spec.requested_resources.length.

* Use union and intersection approach
2025-07-25 21:37:02 +00:00
rosstimothy a367ca7e7f Complete cryptosuitestest migration (#57185)
Now that https://github.com/gravitational/teleport.e/pull/6950 has
landed the deprecated key pre-generation functions can be removed
since they are no longer used.

Updates #51023.
2025-07-25 20:23:43 +00:00
Stephen Levine fb5ea00ad1 [teleport-update] Reliably detect update.yaml after soft reloads (#57065)
* Reliably detect update.yaml after soft reloads

* Fix detection on initial install

* fix log

* Always persist new configuration

* cleanup

* fix tests
2025-07-25 20:12:14 +00:00
Travis Rodgers 522a003a9c Docs: Adding Products component to docs homepage (#57149)
* added products to homepage

* updated title

* moving products info to content

* added Pulumi to cspell to pass lint
2025-07-25 19:23:35 +00:00
rosstimothy d7992a8974 Catch and log any errors before returning from NewTeleport (#57155)
Closes https://github.com/gravitational/teleport/issues/56622.
2025-07-25 16:03:05 +00:00
Noah StrideandEdoardo Spadolini 2e3e7d7a9d MWI: Warn when including Root CA in issuer override chain (#57146)
* Add warning about inclusion of Root CA in chain

* Use equality of RawSubject/RawIssuer rather than string

Co-authored-by: Edoardo Spadolini <[email protected]>

---------

Co-authored-by: Edoardo Spadolini <[email protected]>
2025-07-25 12:00:09 +00:00
Noah Stride 09f0e55a70 Delete deprecated HTTP endpoints (#57163)
* Delete deprecated HTTP endpoints

* Fix invocation of ServerWithRoles.GetClusterName

* Call underlying GetClusterName
2025-07-25 10:02:41 +00:00
rosstimothy 8f56697f76 Migrate all tests to use lib/auth/authtest helpers (#57030)
Removes the auth test helpers in lib/auth/helpers.go and
lib/auth/helpers_mfa.go and converts all tests to use the
equivalent helpers from the authtest package.

The e reference was also updated to include https://github.com/gravitational/teleport.e/pull/6932.

Updates https://github.com/gravitational/teleport/issues/51023.
2025-07-24 18:27:14 +00:00
Taras bafdc68028 dashboard: add example teleport dashboard (#55633) 2025-07-24 18:19:53 +00:00
Dan Upton 9836d358d2 MWI: Move AWS RA service to lib/tbot/services/awsra package (#56707)
* Fix imports

* Move `FileDescription` to bot package

* Move `WorkloadIdentitySelector` to bot package

* Move AWS RA service to separate package

* Add TODO comment on incorrect file descriptions

* Use `LoggerForService` in AWS RA service

* Remove unessasary `else`

* Fix stray import

* Remove unessasary `bytes.NewBuffer`
2025-07-24 17:49:51 +00:00
Luke OkraszewskiandEdoardo Spadolini f71f14e1c9 Add OTP fallback for SSHAgentMFAWebSessionLogin (#57133)
* Add OTP fallback for SSHAgentMFAWebSessionLogin

In the case Teleport `second_factor` is set to `on`,
it is possible for a user to only have OTP configured.
Prior to this commit this would result in a auth fail
as the created challenge only supported TOTP.

Server side would recieve an incomplete `AuthenticateWebUserRequest`
object, which fails validation via `CheckAndSetDefaults` and
as such only a failed login audit event was emitted with no
additional logs.

This mode of failure can be reproduced with
`tsh bench -d web sessions --auth=local`.

changelog: Fixed fallback for web login when second factor is set to `on` but only OTP is configured.

* improve errors for unsupported web login mfa challenge

* Update lib/client/weblogin.go

Co-authored-by: Edoardo Spadolini <[email protected]>

* Update lib/client/weblogin.go

Co-authored-by: Edoardo Spadolini <[email protected]>

* unexport SSHAgentMFAWebSessionLogin and SSHAgentLoginWeb

* update sshAgentLoginWebCreateSession signature

---------

Co-authored-by: Edoardo Spadolini <[email protected]>
2025-07-24 17:30:25 +00:00
Marco Dinis f8f58269f3 AWS Roles Anywhere: List Profiles API: return all profiles (#56984)
This PR changes the `listprofiles` endpoint to return all the profiles
at once.

This list is limited to a max of 250 items as described in the AWS Roles
Anywhere quotas:
https://docs.aws.amazon.com/rolesanywhere/latest/userguide/quotas.html

Pagination will be implemented client side.
2025-07-24 17:01:50 +00:00
Hugo Shaka e690400fb4 Gracefully fail when cannot do client tools updates (#57142)
* Gracefully fail when cannot do client tool update

* Gracefully fail when cannot check the version
2025-07-24 16:42:13 +00:00
Marek Smoliński 30188351c4 Docs: SCIM Sailpoint (#56759) 2025-07-24 16:34:00 +00:00
Marco Dinis d12554bc83 AWS Roles Anywhere: implement profile filters (sync and list profiles method) (#56718)
* AWS IAM Roles Anywhere: implement filters for Profile sync and lister

* move client out of request

* improve godoc for the ListRolesAnywhereProfiles api
2025-07-24 15:47:28 +00:00
23c5fa3c37 Add initial argocd helm deployment docs (#55835)
* Add initial argocd helm deployment docs

* Add section on teleport-kube-agent-chart

* Fix version in argo docs

* Remove teleport cluster setup from kube-agent guide

* Add token generation steps

* Add section for generating the secret

* Fix broken reference

* Fix linting

* Remove unused images from docs

* Fix link to installation instructions

* Add more details to example kube agent manifest

* Update docs/pages/admin-guides/deploy-a-cluster/helm-deployments/argocd-helm.mdx

Co-authored-by: Hugo Shaka <[email protected]>

* Update docs/pages/admin-guides/deploy-a-cluster/helm-deployments/argocd-helm.mdx

Co-authored-by: Hugo Shaka <[email protected]>

* Update docs/pages/admin-guides/deploy-a-cluster/helm-deployments/argocd-helm.mdx

Co-authored-by: Hugo Shaka <[email protected]>

* Update docs/pages/admin-guides/deploy-a-cluster/helm-deployments/argocd-helm.mdx

Co-authored-by: Hugo Shaka <[email protected]>

* Update docs/pages/admin-guides/deploy-a-cluster/helm-deployments/argocd-helm.mdx

Co-authored-by: Hugo Shaka <[email protected]>

* Update docs/pages/admin-guides/deploy-a-cluster/helm-deployments/argocd-helm.mdx

Co-authored-by: Hugo Shaka <[email protected]>

* Add ignoreDifferences section to kube agent example config

* Fix instruction numbering

* Update docs/pages/admin-guides/deploy-a-cluster/helm-deployments/argocd-helm.mdx

Co-authored-by: Roman Tkachenko <[email protected]>

* Update docs/pages/admin-guides/deploy-a-cluster/helm-deployments/argocd-helm.mdx

Co-authored-by: Roman Tkachenko <[email protected]>

* Update docs/pages/admin-guides/deploy-a-cluster/helm-deployments/argocd-helm.mdx

Co-authored-by: Roman Tkachenko <[email protected]>

* Update docs/pages/admin-guides/deploy-a-cluster/helm-deployments/argocd-helm.mdx

Co-authored-by: Roman Tkachenko <[email protected]>

* Clarify section on tokens and fix roles used in example manifest

* Fix list spacing

* Add command for syncing app

* Update docs/pages/admin-guides/deploy-a-cluster/helm-deployments/argocd-helm.mdx

Co-authored-by: Roman Tkachenko <[email protected]>

* Add RBAC settup section to argo guide

* Update docs/pages/admin-guides/deploy-a-cluster/helm-deployments/argocd-helm.mdx

Co-authored-by: Hugo Shaka <[email protected]>

* Add next steps section to argo guide

* Remove summary line from next steps

* Update docs/pages/admin-guides/deploy-a-cluster/helm-deployments/argocd-helm.mdx

Co-authored-by: Hugo Shaka <[email protected]>

---------

Co-authored-by: Hugo Shaka <[email protected]>
Co-authored-by: Roman Tkachenko <[email protected]>
2025-07-24 14:24:34 +00:00
Pawel Kopiczko a448f8ecf5 Update AccessList.Spec.Type docs (#57132) 2025-07-24 13:11:03 +00:00
Dan Upton 70b128e10b MWI: Introduce bot.Bot type (#56658)
* Move core bot logic to `bot.Bot`

* Add godoc comments for the TrustBundleCacheFacade and CRLCacheFacade

* Ensure any stray goroutines terminate when Run and OneShot exit

* Prevent bot from running more than once

* Remove duplicate closer call

* Add a `LoggerForService` convenience method

* Fix imports

* Fix broken test

* Remove duplicate import
2025-07-24 12:52:02 +00:00
Dan Upton a6d37b6769 MWI: Remaining bot package dependencies (#56607)
* Wrap connection configuration parameters in a struct

* Combine auth/proxy pinger and move to internal package

* Move ALPN upgrade cache into internal package

* Move onboarding config into separate package

* Move bot identity service into separate package

* Fix SupportedJoinMethods reference

* Fix broken onboarding struct references

* Fix imports

* Use `DebugContext`
2025-07-24 11:01:59 +00:00
Marco Dinis 40991314c8 AWS Roles Anywhere: improve logging when proxy is missing (#57069) 2025-07-24 10:07:26 +00:00
Yassine Bounekhla 5840a36529 bump eslint/plugin-kit version to 0.3.3 (#57110) 2025-07-24 08:16:44 +00:00
Grzegorz Zdunek 76d090d23e Prevent sending TDP messages in chunks during desktop sessions in Connect (#57022)
* Prevent sending TDP messages in chunks during desktop sessions in Connect

* Improve comments
2025-07-24 08:13:07 +00:00
Noah StrideandPaul Gottschling d11cc55596 Tweak MWI docs intro page language (#57017)
* Tweak MWI docs intro page language

* Update docs/pages/machine-workload-identity/machine-workload-identity.mdx

Co-authored-by: Paul Gottschling <[email protected]>

---------

Co-authored-by: Paul Gottschling <[email protected]>
2025-07-24 06:37:48 +00:00