Commit Graph
17712 Commits
Author SHA1 Message Date
Steven Martin 362ce97707 docs: add tctl inventory to CLI ref (#40615)
* docs: add tctl inventory to cli ref

* docs: correct version variable reference

* docs: spell fixes for tctl inventory clis

* docs: applied suggestions

* docs: lint fix

* docs: lint fix

* docs: update verbiage for inventory listing note
2024-04-18 10:45:11 +00:00
Alex McGrath 3733dc218b log user notifications (#40625) 2024-04-18 09:50:46 +00:00
Alan Parra 8b8773e7fa Update web_session_id description in DeviceMetadata (#40637)
* Update web_session_id description in DeviceMetadata

* Update generated protos
2024-04-18 07:06:06 +00:00
Marco André Dinis 389f7a9b9a Remove unused Integration Service (#40266)
The Integrations Service is not used in ServerWithRoles.
It is only used in `lib/auth.NewGRPCServer`

This PR removes this service instance in order to remove dead code.
2024-04-18 07:05:26 +00:00
Marco André Dinis d3c795889e Fix JIRA issue type (#40587)
* Fix JIRA issue type

During set up we ask for the Jira Issue Type, but then we always send
the `Task` type.

This PR changes the field's value to match the configured one.

* add test
2024-04-18 07:05:22 +00:00
Nic Klaassen ec046e1a0e feat: add regexp.match to access request filter and where expressions (#40568)
This PR updates the parsers for the role
`spec.allow.request.thresholds.filter` and `spec.allow.review.where`
expression fields to support a new function `regexp.match(list, re)`.

It follows the typical teleport style following from role templates,
`where` expressions, login rules, and label expressions:
- `list` can be a `[]string` or a `string` (a single string is treated
  as a list of length 1).
- `re` can be a glob pattern like `example-*` or a proper regex like
  `^example-.*$` when surrounded by `^$`.

Some examples are included in the docs and tests.

I have switched from using `NewJSONBoolParser` to new dedicated parsers
based on `typical`. These should have better performance in terms of
speed and memory, be easier to extend in the future, and provide better
error messages when users write invalid expressions.

These were the only uses of `NewJSONBoolParser`, so it has been removed.

Changelog: add `regexp.match` to access request `filter` and `where`
expressions
2024-04-18 00:17:02 +00:00
Brian Joerger 3e1d008f55 RFD 0169 - Application MFA Sessions (#39536)
* Add RFD 168 - Application MFA Sessions.

* Update RFD number.

* Address comments.

* Remove product reviewers due to minimal UX implications.
2024-04-17 19:18:25 +00:00
Brian Joerger 9479f7fa53 Remove extraneous App Session watch logic (#40092)
* Remove WaitforAppSession logic.

* Remove WaitForSnowflakeSession logic.

* Decrease log severity of web session cache readthrough to debug.
2024-04-17 19:03:59 +00:00
rosstimothy c73a6b5503 fix: Restore component key value (#40623)
When converting from using constants in trace to equivalents
defined in teleport the trace.component value was accidentally
replaced.
2024-04-17 17:22:19 +00:00
Noah Stride 955f86ba3e Thread context.Context through auth.Register and add OTel Tracing (#40597)
* Wire context.Context into `auth/register.go`

* Thread `context.Context` through `auth.Register` and add tracing

* Unwrap error before recording it in the span
2024-04-17 17:19:07 +00:00
Michael 9fa43319d9 Update connector box font (#40585) 2024-04-17 15:42:23 +00:00
Alex McGrath 03a91bc9b6 @ requester by email in slack access requests (#40041)
* @ requester in access requests

* Add NotifyUser to direct message user on request update

* resolve comments

* Update test to make sure message is sent
2024-04-17 15:38:23 +00:00
STeve (Xin) Huang 8978ab34f7 Support Azure CLI Access on AKS with workload identity (#40142)
* Support Azure CLI Access on AKS with workload identity

* fix lint and properly pass along a logger

* fix typos

* reverse error check and fix typo

* fix terraform go.mod

* fix event handler go.mod
2024-04-17 15:00:38 +00:00
dependabot[bot]andAlan Parra d2d490d88f Bump the go group with 3 updates (#40594)
* Bump the go group with 3 updates

Bumps the go group with 3 updates: [cloud.google.com/go/compute/metadata](https://github.com/googleapis/google-cloud-go), [github.com/ClickHouse/clickhouse-go/v2](https://github.com/ClickHouse/clickhouse-go) and [github.com/go-ldap/ldap/v3](https://github.com/go-ldap/ldap).


Updates `cloud.google.com/go/compute/metadata` from 0.2.3 to 0.3.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/netapp/v0.2.3...v0.3.0)

Updates `github.com/ClickHouse/clickhouse-go/v2` from 2.23.0 to 2.23.1
- [Release notes](https://github.com/ClickHouse/clickhouse-go/releases)
- [Changelog](https://github.com/ClickHouse/clickhouse-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ClickHouse/clickhouse-go/compare/v2.23.0...v2.23.1)

Updates `github.com/go-ldap/ldap/v3` from 3.4.7 to 3.4.8
- [Release notes](https://github.com/go-ldap/ldap/releases)
- [Commits](https://github.com/go-ldap/ldap/compare/v3.4.7...v3.4.8)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/compute/metadata
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: go
- dependency-name: github.com/ClickHouse/clickhouse-go/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: go
- dependency-name: github.com/go-ldap/ldap/v3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: go
...

Signed-off-by: dependabot[bot] <support@github.com>

* Tidy all modules

* Address go/compute/metadata deprecations

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alan Parra <alan.parra@goteleport.com>
2024-04-17 13:37:25 +00:00
Alan Parra cfc35588c5 fix: Correctly handle passwordless in MFA audit events (#40607)
* Record passwordless username in the mfa_auth_challenge.validate event

* Correctly render mfa_auth_challenge.create events without an user

* Update snapshots
2024-04-17 13:18:51 +00:00
9062d62aff Add access monitoring rules cache and tctl interactions (#40218)
* Add access monitoring rules cache and tctl interactions

* Swap access monitoring rules collections to use upsert

* Update accessmonitoringrules cache test

* Readd missing err check

* Update lib/auth/grpcserver.go

Co-authored-by: Marco André Dinis <marco.dinis@goteleport.com>

* Update lib/auth/grpcserver.go

Co-authored-by: rosstimothy <39066650+rosstimothy@users.noreply.github.com>

* Update tool/tctl/common/resource_command.go

Co-authored-by: Marco André Dinis <marco.dinis@goteleport.com>

* Add tctl isForced behaviour for access monitoring rules

* Add missing methods to cache interface for access monitoring rules

* Add info messages to tctl commands for accessmonitoring rule edits

* Add missing user message for forced rule creation

* Appease linter

---------

Co-authored-by: Marco André Dinis <marco.dinis@goteleport.com>
Co-authored-by: rosstimothy <39066650+rosstimothy@users.noreply.github.com>
2024-04-17 13:05:01 +00:00
d3ca84c6d8 docs: Add clarity on reverse proxies and supported versions to troubleshooting section (#40578)
* docs: Add clarity on reverse proxies and supported versions to troubleshooting section

* Fix version numbers

Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>

* Apply suggestions from code review

Co-authored-by: Paul Gottschling <paul.gottschling@goteleport.com>

* Fix markdown

* Add cloudflared to cspell.json

* Update docs/pages/includes/tls-multiplexing-warnings.mdx

* Update docs/pages/includes/tls-multiplexing-warnings.mdx

---------

Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
Co-authored-by: Paul Gottschling <paul.gottschling@goteleport.com>
2024-04-17 13:03:45 +00:00
Hugo ShakaandAlan Parra 89b11a6e3f Lint Terraform and Event-Handler (#40604)
* Lint Terraform and Event-Handler

* lint terraform

* add Makefile lint targets for TF and event-handler

* address feedback

* Update integrations/event-handler/Makefile

Co-authored-by: Alan Parra <alan.parra@goteleport.com>

---------

Co-authored-by: Alan Parra <alan.parra@goteleport.com>
2024-04-16 21:44:55 +00:00
Alan Parra 22d9250eab Remove the authz.Context from AugmentWebSessionCertificates (#40506) 2024-04-16 21:18:48 +00:00
Lisa Kim 99d715a413 Web: Add auto discover capabilites for ec2's (#40243) 2024-04-16 19:53:19 +00:00
Steven Martin 22520bb102 docs: remove team version reference in terraform guide (#40600) 2024-04-16 18:34:44 +00:00
Alan Parra 85bcbc5441 Add Hugo as a reviewer to dependabot / and /api PRs (#40601) 2024-04-16 18:29:32 +00:00
Brian Joerger bb7b9e909e Set app session cert's routeToApp.SessionID to the actual session id. (#39971) 2024-04-16 17:54:10 +00:00
Steven MartinandZac Bergquist 24e1edcec5 docs: add access monitoring notice for external audit storage (#40576)
* docs: add access monitoring notice for external audit storage

* lint fixes

* update verbiage

Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>

* update verbiage for querying

---------

Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
2024-04-16 17:38:51 +00:00
Isaiah Becker-Mayer 5c55866895 Fix licensing protocol (#40590)
* Updates commit-hash to IronRDP fix/resilient-blobtype HEAD

* Updates commit-hash to IronRDP fix/resilient-blobtype HEAD

* Updates to latest IronRDP hash. Note that this hash is of a still-open PR (https://github.com/Devolutions/IronRDP/pull/436) and thus the IronRDP hash should be frozen until those changes are merged and the hash updated to IronRDP latest master
2024-04-16 17:13:47 +00:00
Hugo ShakaandAlan Parra 6b91fe5bbb Bump TF go mod + block breaking updates (#40582)
* Bump TF go mod + block breaking updates

* Update .github/dependabot.yml

Co-authored-by: Alan Parra <alan.parra@goteleport.com>

---------

Co-authored-by: Alan Parra <alan.parra@goteleport.com>
2024-04-16 17:03:06 +00:00
Edoardo Spadolini 94262d8ca5 Fix missing shell error checking logic (#40574) 2024-04-16 16:03:28 +00:00
Gus Luxton 7994ecb825 docs: Add ssh verb to example tsh command in Machine ID SSH guide (#40577) 2024-04-16 13:28:10 +00:00
Isaiah Becker-Mayer bff733dcb2 SmartCard ascii variants (#40287)
* Current hash corresponds to IronRDP branch  (should be changed before merging).

* Updates ScardBackend message handling code to account for ascii variants

* Return a timeout when we receive a non-infinite timeout status change call

Includes minor refactor to clean up the code a bit.

* updates to latest IronRDP master hash
2024-04-15 19:58:20 +00:00
Alan Parra 5cadbb5bdd chore: Update e/ reference (#40558) 2024-04-15 18:25:14 +00:00
Brian JoergerandRafał Cieślak 1868f51186 MFA for App access (WebUI) (#40077)
* Implement web isMFARequired for App access.

Pass mfa challenge response in web createAppSession request.

* Update web/packages/teleport/src/services/apps/apps.ts

Co-authored-by: Rafał Cieślak <rafal.cieslak@goteleport.com>

---------

Co-authored-by: Rafał Cieślak <rafal.cieslak@goteleport.com>
2024-04-15 17:40:20 +00:00
dependabot[bot]andAlan Parra 627e108bd8 Bump the go group with 4 updates (#40538)
* Bump the go group with 4 updates

Bumps the go group with 4 updates: [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go), [github.com/aws/aws-sdk-go-v2/service/glue](https://github.com/aws/aws-sdk-go-v2), [github.com/aws/aws-sdk-go-v2/service/iam](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/aws-sdk-go-v2/service/rds](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go` from 1.51.19 to 1.51.21
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.51.19...v1.51.21)

Updates `github.com/aws/aws-sdk-go-v2/service/glue` from 1.78.0 to 1.79.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/ec2/v1.79.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.78.0...service/ec2/v1.79.0)

Updates `github.com/aws/aws-sdk-go-v2/service/iam` from 1.31.4 to 1.32.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.32.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/fms/v1.31.4...service/s3/v1.32.0)

Updates `github.com/aws/aws-sdk-go-v2/service/rds` from 1.77.0 to 1.77.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.77.0...service/rds/v1.77.1)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: go
- dependency-name: github.com/aws/aws-sdk-go-v2/service/glue
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: go
- dependency-name: github.com/aws/aws-sdk-go-v2/service/iam
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: go
- dependency-name: github.com/aws/aws-sdk-go-v2/service/rds
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: go
...

Signed-off-by: dependabot[bot] <support@github.com>

* Tidy modules

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alan Parra <alan.parra@goteleport.com>
2024-04-15 14:18:19 +00:00
Paul Gottschling 8bdbce5751 Add a linter for legacy Teleport editions (#40487)
See #40432

Add a vale linter to catch instances of `Teleport Cloud` and `Teleport
Enterprise Cloud`. We are now referring to a single commercial edition,
Teleport Enterprise, and describing the hosting type separately from the
name of the edition.
2024-04-15 13:29:19 +00:00
Paul Gottschling 20552a6949 Add a linter for [Resource] Access (#40421)
This is a legacy convention for describing Teleport features. This
change ports the linter for `[Resource] Access` usage from
`gravitational/docs` to a vale style (we'll need to remove the linter
from `gravitational/docs` separately). It also excludes "Database Access
Controls" from the linter, since Database Access Controls is a current
Teleport feature.
2024-04-15 13:25:59 +00:00
Marco André Dinis 851b0d8fdf DiscoveryService: prevent EICE Node duplication (#40220)
* DiscoveryService: exclusive worker per Discovery Group

This PR ensures only one DiscoveryService is running per DiscoveryGroup.
It does so using a SemaphoreLock.

This should prevent any duplicate API calls and also prevent duplicate
resources on Teleport side.

* improve eice server name and releaseGroupLockFn init

* review pt2

* improve error handling

* re-organize lock acquire

* improve eice node name handling

* simplify lock on discovery group

* Remove lock logic and rely on node name to prevent dups

* improve test comment

* change comment about skipping nodes
2024-04-15 13:24:33 +00:00
Alan Parra 87f2bdcce8 Implement the /webapi/devices/webconfirm handler (#40531) 2024-04-15 13:17:59 +00:00
Noah Stride 6283cd6c2b Add ability to configure labels on kubernetes_secret destination (#40211) 2024-04-15 12:07:08 +00:00
dependabot[bot]andCam Hutchison c72c189663 Bump docker/setup-buildx-action in /.github/workflows (#40324)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/2b51285047da1547ffb1b2203d8be4c0af6b1f20...d70bba72b1f3fd22344832f00baa16ece964efeb)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Cam Hutchison <camh@goteleport.com>
2024-04-15 11:57:59 +00:00
Noah Stride 764d9b1a0a Add teleport tpm identify and tbot tpm identify commands (#40418)
* Add func for tbot tpm identify command

* Add `tbot tpm identify` command

* Move helper to `tpm` package and add tests

* Add tpm identify command to `teleport`
2024-04-15 11:55:55 +00:00
Trent Clarke 2be9025558 Fix overwritten ACL member values during Sync & SCIM push (#40454)
* Fix overwritten member values

* test fixup

* refactor for readability

* Addess review feedback

* Preserve "AddedBy"

* Make preserving metadata the default behaviour

* fix cache tests

* Replace custom validation with calls to `CheckAndSetDefaults()`

* Commentary on metadata preservation

* Test Fixup
2024-04-15 06:48:52 +00:00
dependabot[bot] c0e3c5e768 Bump jetpack-io/devbox-install-action in /.github/workflows (#40422)
Bumps [jetpack-io/devbox-install-action](https://github.com/jetpack-io/devbox-install-action) from 0.8.0 to 0.9.0.
- [Release notes](https://github.com/jetpack-io/devbox-install-action/releases)
- [Commits](https://github.com/jetpack-io/devbox-install-action/compare/4a7f1d5332cc72057d5e8080edebfcdf652e642e...2aca099641c8564f8a841de48cd51107e6a24588)

---
updated-dependencies:
- dependency-name: jetpack-io/devbox-install-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-15 03:11:00 +00:00
Steven Martin d6dadc2cf4 docs: update docs cert validity period descriptions (#40540) 2024-04-14 19:21:35 +00:00
Anton MiniailoandHugo Shaka 7ec26dd1fb Mention in the documentation that we ignore "kube-system" and "kube-public" namespaces for kube app discovery (#40529)
* Mentioned in the documentation that we ignore "kube-system" and "kube-public" namespaces for kube app discovery.

* Use admonition

Co-authored-by: Hugo Shaka <hugo.hervieux@goteleport.com>

* Rerender kube agent docs

---------

Co-authored-by: Hugo Shaka <hugo.hervieux@goteleport.com>
2024-04-12 22:21:01 +00:00
Hugo Shaka 8002d97c1c Skip flaky access plugin tests (#40525)
* Skip flaky access plugin tests

* fixup! Skip flaky access plugin tests
2024-04-12 21:51:51 +00:00
rosstimothy 5a64d1fb8d Convert tsh recursive listing to connect to Proxy via gRPC (#40268)
* Convert recursive listing to use Proxy gRPC API

Removes deprecated usage of ProxyClient in getClusterClients used
for tsh ls -R and tsh db ls -R.

* Remove unsued helper functions

* Replace removed test

* Remove unused db listing function

* convert tsh apps ls -R and tsh kube ls -R

* remove unused function and tweak IsExpired

* create common testcase for listing resources
2024-04-12 20:19:11 +00:00
Noah Stride c8f13946a8 Fix tpm joining protobuf oneof (#40514)
* Fix tpm joining protobuf oneof

* See if Buf will allow me to reuse the indexes outside of oneof

* Regen protos

* Tactical renaming

* Update CRDs
2024-04-12 19:16:44 +00:00
Tiago Silva 0b868bb1ff Fix go.work issues caused by incompatible protobuf replacements (#40521)
Signed-off-by: Tiago Silva <tiago.silva@goteleport.com>
2024-04-12 15:24:44 +00:00
Alan Parra a1c7ab71a2 Modify lib/devicetrust/authn to return the DeviceConfirmationToken (#40377)
* Update FakeDeviceService to issue confirmation tokens

* Modify lib/devicetrust/authn to return the DeviceConfirmationToken
2024-04-12 14:34:22 +00:00
Steven Martin c755d4e8ff docs: update Okta example (#40455) 2024-04-12 12:50:04 +00:00
Tiago Silva 3e57dde50d GCI: Add special rules for integrations (#40466)
This PR adds a special group (last one) to match the `terraform` and
`event-handler` integrations.

These two integrations aren't imported by teleport codebase but they
import teleport packages. The issue arrises from the fact that they have
their own module namespace. In order to distinguish their module
namespace, this PR proposes moving them into a new (last) import group
and keep Teleport into a separate group. Unfortunately, at the time of
writing `gci` doesn't support skip directories which causes problems for
our `lint` CI step as it will fail.

This results in the following structure for files within the two
integrations:

- standard
- default
- teleport
- specific integration

Signed-off-by: Tiago Silva <tiago.silva@goteleport.com>
2024-04-12 08:44:21 +00:00