Commit graph

11812 commits

Author SHA1 Message Date
Justinas Stankevičius d89879c2f5
Add gRPC service definition for Plugin resources (#21750)
* Add plugin exchange service

* Add Plugin methods to auth

* Add gRPC-layer methods for Plugin

* Add RBAC presets for Plugin

* Test GetPlugin()/NoSecrets access

* Make error assertions more correct in role test

* Deny setting credentials if user can not read them

* gofmt

* Apply minor suggestions from code review

Co-authored-by: rosstimothy <39066650+rosstimothy@users.noreply.github.com>
Co-authored-by: Tiago Silva <tiago.silva@goteleport.com>

* Move dependency into an existing block in go.mod

* Improve error messages for failed type assertions

* DRY WithSecrets access checks for Plugins

* Run new tests in parallel

* Improve error assertions in auth_with_roles_test

* TestGetPluginWithSecrets: split cases to subtests

* Clean up test servers and clients

* Add proto for plugin service

* Remove Plugin methods from auth service

Moved to a dedicated service

* Remove plugin-related auth methods

Moved to a dedicated service in Enterprise

* Remove CreatePlugin test from auth_with_roles_test

Moved to a dedicated service in Enterprise

* Pass "backend getter" to local plugins service

This pattern is used in Enterprise to set up secondary services
before auth (and backend) are created.

* Rename InitialCredentials to BootstrapCredentials

* Add plugins service to genproto.sh

* Reformat generated proto

* Remove obsolete PluginExchangeService

The equivalent of this is now in Enterprise

* Add kube service to genproto.sh; regenerate

* Add ListPlugins to plugin backend service

* Reimplement GetPlugins on top of ListPlugins

This is a "convenience" implementation for the backend service layer.

* Replace GetPlugins with ListPlugins in gRPC schema

* Fix ListKubernetesResources unit test

* Simplify plugin pagination key to just the name

* Use existing constant for page size

* Make dummy clients return errors instead of panic

* Remove obsolete field

* Ensure go.mod is valid for corresponding e changes

* Fix passing mutex ref

* Move teleport-plugins import to e_imports

* Revert oauth change in go.mod

* Use limit+1 to look-ahead when paginating plugins

* Test plugin pagination with pageSize > numPlugins

* Add descriptive messages to gRPC dummy clients

* Plugin: add RW for editor; remove secrets from gRPC

* Make message more descriptive for dummy gRPC conn

---------

Co-authored-by: rosstimothy <39066650+rosstimothy@users.noreply.github.com>
Co-authored-by: Tiago Silva <tiago.silva@goteleport.com>
2023-02-23 14:32:41 +00:00
Hugo Shaka 8cec3828db
operator: reconcile Users with standard Teleport reconciler (#21512)
* operator: reconcile Users through Teleport reconciler

* fixup! operator: reconcile Users through Teleport reconciler
2023-02-23 14:15:05 +00:00
Rafał Cieślak 6bd3cbac47
createPtyProcess: Return early on error (#22180)
Without this early return, createPtyProcess of PtyHostService would call
the callback twice on error. This doesn't have much negative implications
since the gRPC implementation will simply ignore the second call, however
it does pose some problems when trying to manually test PTY failures
by making `new PtyProcess` return an error.
2023-02-23 13:55:19 +00:00
Rafał Cieślak ff07b46f6e
ClustersService: Remove internal logins when syncing root clusters (#22179) 2023-02-23 13:55:15 +00:00
Ryan Clark 15bd28ae82
Add caching to web assets (#22137) 2023-02-23 12:20:58 +00:00
Steven Martin 2a2f4c9f44
Add Security-Kerberos Event Log for Desktop Troubleshooting (#22085)
* Add Security-Kerberos Event Log for Desktop Troubleshooting

* verbiage

Co-authored-by: Alex Fornuto <alex.fornuto@goteleport.com>

* verbiage update

Co-authored-by: Alex Fornuto <alex.fornuto@goteleport.com>

* verbiage change

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

---------

Co-authored-by: Alex Fornuto <alex.fornuto@goteleport.com>
Co-authored-by: Paul Gottschling <paul.gottschling@goteleport.com>
2023-02-23 01:53:05 +00:00
Gavin Frazar ade99b7520
update tsh local proxy tunnel logic (#21779)
* check if --cert-file, --key-file are given when tunnel is required
* require tunnel mode for SQL Server and Cassandra
* deprecate --cert-file and --key-file flags in favor of --tunnel
2023-02-22 23:54:14 +00:00
Andrew Burke 4c4669f07f
Remove Azure install params from node configure output (#22113)
This change fixes a bug where Azure join params would incorrectly appear in
the output of `teleport node configure`.
2023-02-22 23:18:13 +00:00
Steven Martin 0fce40d294
Provide flag to only display tsh binary version (#20521)
* Add flag to only check tsh binary version and not server version

* Update language

* Update variable comment

* Removed unncessary default flag, changed to --client from --client-only, updated variables used

* Add showing proxy address to tsh version

* Verbiage change for client flag

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

* client only flag in docs

* Fix word for tsh —client

* Change flag description

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

* Updated tsh version comments, --client description

* copy edits

* Remove CLI docs, putting in a sep PR

---------

Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
Co-authored-by: alexfornuto <alex.fornuto@goteleport.com>
2023-02-22 22:52:42 +00:00
Michelle Bergquist 8342424ebb
add MFA type and Login flow to register challenge event (#22112) 2023-02-22 21:44:42 +00:00
Paul Gottschling 3c557a0cc5
Mark Proxy Peering as in Preview (#22146)
Closes #20025
2023-02-22 21:36:56 +00:00
Joel 9ae691feb5
Implement tctl resource commands for Device Trust (#21921)
* handle tctl create device.yaml

* delete + fix create

* delete by asset tag

* factor out finder

* tctl get device

* gci

* use unmarshaler

* device

* test + unmarshal version check

* improve error

* fix device asset search

* fix parse shortcut bug

* various fixes

* rename CheckAndSetDefaults to checkAndSetDefaults

* Update tool/tctl/common/device/resource.go

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

* Update tool/tctl/common/collection.go

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

* Update tool/tctl/common/resource_command.go

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

* fix import

* improve findDeviceByIDOrTag and allow multiple returns for fuzzy asset tag searching in tctl get devices/

* update create/delete messages

* print warn instead of error

* mark sanity check

* resource rework

* add comments

* fix typo

* Update tool/tctl/common/resource_command.go

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

* Update tool/tctl/common/resource_command.go

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

* Update tool/tctl/common/resource_command.go

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

* drop findmultiple

* Update tool/tctl/common/resource_command.go

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

* Update tool/tctl/common/device/resource.go

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

* various feedback updates

* user friendly enum for ostypes

* add comments

* Update tool/tctl/common/resource_command.go

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

* Update tool/tctl/common/device/resource.go

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

* Update tool/tctl/common/device/resource.go

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

* Update tool/tctl/common/device/resource.go

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

* Update tool/tctl/common/device/resource.go

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

* gci

* feedback

* typos

* Update tool/tctl/common/device/resource.go

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

---------

Co-authored-by: Alan Parra <alan.parra@goteleport.com>
2023-02-22 21:11:13 +00:00
Michael Wilson 9527b6518c
User group API and cache. (#21956)
The user group has been added to the API and to the cache.
2023-02-22 18:45:11 +00:00
Jeff Pihach 2973755587
add bypassses for UI GHA's (#22105) 2023-02-22 17:31:43 +00:00
Michael Wilson 11a257218a
Add in WrapContextWithUserFromTLSConnState. (#22134)
WrapContextWithUser has been split into two functions that allows for using
the TLS connection state logic without having an actual TLS connection. This
will be used by the SAML IdP logic to wrap the user context information into
the request context.
2023-02-22 16:33:09 +00:00
Michael Wilson c974334e23
Add expire time to SAML session creation. (#22106)
SAML session creation was missing setting the expire time from the SAML
session data.
2023-02-22 16:07:33 +00:00
dependabot-batcher[bot] 28c23d6e48
Batched Dependabot updates (#22060)
* Bump cloud.google.com/go/container from 1.10.0 to 1.13.1

Bumps [cloud.google.com/go/container](https://github.com/googleapis/google-cloud-go) from 1.10.0 to 1.13.1.
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/asset/v1.10.0...container/v1.13.1)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/container
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

* Bump github.com/aws/aws-sdk-go-v2/config from 1.18.12 to 1.18.13

Bumps [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) from 1.18.12 to 1.18.13.
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.18.12...config/v1.18.13)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

* Bump google.golang.org/api from 0.109.0 to 0.110.0

Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.109.0 to 0.110.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.109.0...v0.110.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

* go mod tidy

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Tim Ross <tim.ross@goteleport.com>
2023-02-22 15:59:14 +00:00
Edoardo Spadolini 317833b9f2
Add new reporting license flag (#21928)
* Partially revert 09633dd47f

* Hide old features from String, add comments

* Add new reporting license flag

* Add testing

* add comment to LicenseV3/LicenseSpecV3

* Less ambiguous name for the new field

* Elaborate more on the unused flags
2023-02-22 15:43:58 +00:00
Vitor Enes 3f63a59bbd
RFD 108 - Agent Census (#21337)
* RFD: Agent Census

* Add install methods

* Add tarball

* Fill in TODOs

* Track multiple installation methods

* Detect EKS & GKE

* Add container runtime back

* Improve wording

* Use `/etc/os-release` for OS version

* Use `/.dockerenv` for Docker

* Improve wording

* Remove ps scripts

* Be less vague in goal

* Link to agent census section

Co-authored-by: Michelle Bergquist <11967646+michellescripts@users.noreply.github.com>

* Track `systemctl`

* Add new `UpstreamInventoryAgentMetadata` message

* ICS

* Improve wording

* Improve wording

* Improve wording

* Be more explict about the possible values in `UpstreamInventoryAgentMetadata` fields

* Improve wording

* Simplify agent metadata fetching flow

* Add note about command output parsing

* Add note about ICS flow

* Improve glibc description

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

* Fix typo

Co-authored-by: Walt <walt@goteleport.com>

* Add Teleport AMIs to list of install methods we want to track

* Add note about data sanitization

* RFD number

* Update required approvals

* Improve code sketch with suggestion

* Include git version in `UpstreamInventoryAgentMetadata.ContainerOrchestrator`

* Merge dev plan steps 2 and 3

* Remove `TeleportAccessProtocol` enum and detail how info will be stored in PostHog

* Update `UpstreamInventoryAgentMetadata` comments

* RFD number

* Fix PostHog data

* server_id -> host_id

* RFD number

* RFD number

---------

Co-authored-by: Michelle Bergquist <11967646+michellescripts@users.noreply.github.com>
Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
Co-authored-by: Walt <walt@goteleport.com>
2023-02-22 11:20:36 +00:00
Grzegorz Zdunek 8c08211353
Connect: Enable font configuration (#21965)
* Remove sans serif from config

* Pass 'fonts.monoFamily' as style prop

* Get rid of `getSansSerif` function

* Use mono font from theme

* Add 'terminal.fontFamily' and 'terminal.fontSize' config options

* Require 'terminal.fontSize' size to be int

* Revert unneeded changes to mono font usage

* Add comment with a link to `ctrl.ts`

* Allow 'terminal.fontSize' to be in the range 1-256
2023-02-22 09:30:02 +00:00
Rafał Cieślak 5ebe21c9a2
Document silent install of Connect on Windows (#21975)
* Document silent install of Connect on Windows

* Get rid of the parenthetical

* Update wording
2023-02-22 09:14:19 +00:00
Evan Freed 8c9ba8d838
upgrade version to 11.3.4 (#22099)
Signed-off-by: Evan Freed <evan.freed@goteleport.com>
2023-02-21 23:21:55 +00:00
Steven Martin cb2f3a0fbe
Spell fix FluentD doc (#22107) 2023-02-21 22:26:53 +00:00
Zac Bergquist 4b9351cbe5
Enable xterm web links addon (#22043)
This renders links as <a> elements in the web-based terminal,
making them true clickable links.

Closes #7569
2023-02-21 21:08:22 +00:00
Marco André Dinis 552d672822
Install deb/yum repos when using node-join script (#21717)
* Install deb/yum repos when using node-join script

When a repo is available for the current Linux distro/version, use it
instead of just installing Teleport from the deb/rpm files.

It fallsback to the traditional binary installation when the repo is not
available.

* comment /etc/os-release

* remove sudo; add comment to runners

* improve is_repo_available function
2023-02-21 19:08:18 +00:00
Marco André Dinis 8436ea949b
Discover: install ent image when cluster is enterprise (#21971)
Update the helm chart for kube-agent.
The image swap logic was already there.

Update the UI to include `enterprise: <isEnterprise>` when installing
the kube-agent.
2023-02-21 19:06:01 +00:00
Nic Klaassen d77fb5bee4
fix: improve tsh logs when skipping auto Access Request (#22048)
Currently the `tsh` debug log is polluted with "errors" created by the
[automatic access request feature](https://goteleport.com/docs/access-controls/access-requests/resource-requests/?scope=enterprise#automatically-request-access-for-ssh)
even in completely expected scenarios, e.g. when the user has no
permission to create Resource Access Requests.

Before this change:
```
$ tsh ssh -d alice@one-auth
...<omitted>...
2023-02-17T15:30:16-08:00 DEBU [TSH]       unable to request access to node error:[
ERROR REPORT:
Original Error: *trace.BadParameterError user attempted a resource request but does not have any &#34;search_as_roles&#34;
Stack Trace:
        github.com/gravitational/teleport/api@v0.0.0/client/client.go:880 github.com/gravitational/teleport/api/client.(*Client).CreateAccessRequest
        github.com/gravitational/teleport/tool/tsh/tsh.go:2896 main.accessRequestForSSH.func1
        github.com/gravitational/teleport/lib/client/api.go:1351 github.com/gravitational/teleport/lib/client.(*TeleportClient).WithRootClusterClient
        github.com/gravitational/teleport/tool/tsh/tsh.go:2895 main.accessRequestForSSH
        github.com/gravitational/teleport/tool/tsh/tsh.go:2916 main.retryWithAccessRequest
        github.com/gravitational/teleport/tool/tsh/tsh.go:2993 main.onSSH
        github.com/gravitational/teleport/tool/tsh/tsh.go:1086 main.Run
        github.com/gravitational/teleport/tool/tsh/tsh.go:482 main.main
        runtime/proc.go:250 runtime.main
        runtime/asm_amd64.s:1598 runtime.goexit
User Message: user attempted a resource request but does not have any &#34;search_as_roles&#34;] tsh/tsh.go:2920

ERROR REPORT:
Original Error: *trace.AccessDeniedError access denied to alice connecting to one-auth:0@default@cluster-one
Stack Trace:
        github.com/gravitational/teleport/lib/client/client.go:1633 github.com/gravitational/teleport/lib/client.NewNodeClient
        github.com/gravitational/teleport/lib/client/client.go:1563 github.com/gravitational/teleport/lib/client.(*ProxyClient).ConnectToNode
        github.com/gravitational/teleport/lib/client/api.go:1451 github.com/gravitational/teleport/lib/client.(*TeleportClient).ConnectToNode
        github.com/gravitational/teleport/lib/client/api.go:1525 github.com/gravitational/teleport/lib/client.(*TeleportClient).runShellOrCommandOnSingleNode
        github.com/gravitational/teleport/lib/client/api.go:1408 github.com/gravitational/teleport/lib/client.(*TeleportClient).SSH
        github.com/gravitational/teleport/tool/tsh/tsh.go:2995 main.onSSH.func1.1
        github.com/gravitational/teleport/lib/client/api.go:504 github.com/gravitational/teleport/lib/client.RetryWithRelogin
        github.com/gravitational/teleport/tool/tsh/tsh.go:2994 main.onSSH.func1
        github.com/gravitational/teleport/tool/tsh/tsh.go:2907 main.retryWithAccessRequest
        github.com/gravitational/teleport/tool/tsh/tsh.go:2993 main.onSSH
        github.com/gravitational/teleport/tool/tsh/tsh.go:1086 main.Run
        github.com/gravitational/teleport/tool/tsh/tsh.go:482 main.main
        runtime/proc.go:250 runtime.main
        runtime/asm_amd64.s:1598 runtime.goexit
User Message: access denied to alice connecting to one-auth:0@default@cluster-one
```

After:
```
$ tsh ssh -d alice@one-auth
...<omitted>...
2023-02-17T16:42:29-08:00 DEBU [TSH]       Not attempting to automatically request access, reason: Resource Access Requests require usable "search_as_roles", none found for user "nklaassen" tsh/tsh.go:2922

ERROR REPORT:
Original Error: *trace.AccessDeniedError access denied to alice connecting to one-auth:0@default@cluster-one
Stack Trace:
        github.com/gravitational/teleport/lib/client/client.go:1633 github.com/gravitational/teleport/lib/client.NewNodeClient
        github.com/gravitational/teleport/lib/client/client.go:1563 github.com/gravitational/teleport/lib/client.(*ProxyClient).ConnectToNode
        github.com/gravitational/teleport/lib/client/api.go:1451 github.com/gravitational/teleport/lib/client.(*TeleportClient).ConnectToNode
        github.com/gravitational/teleport/lib/client/api.go:1525 github.com/gravitational/teleport/lib/client.(*TeleportClient).runShellOrCommandOnSingleNode
        github.com/gravitational/teleport/lib/client/api.go:1408 github.com/gravitational/teleport/lib/client.(*TeleportClient).SSH
        github.com/gravitational/teleport/tool/tsh/tsh.go:2997 main.onSSH.func1.1
        github.com/gravitational/teleport/lib/client/api.go:504 github.com/gravitational/teleport/lib/client.RetryWithRelogin
        github.com/gravitational/teleport/tool/tsh/tsh.go:2996 main.onSSH.func1
        github.com/gravitational/teleport/tool/tsh/tsh.go:2907 main.retryWithAccessRequest
        github.com/gravitational/teleport/tool/tsh/tsh.go:2995 main.onSSH
        github.com/gravitational/teleport/tool/tsh/tsh.go:1086 main.Run
        github.com/gravitational/teleport/tool/tsh/tsh.go:482 main.main
        runtime/proc.go:250 runtime.main
        runtime/asm_amd64.s:1598 runtime.goexit
User Message: access denied to alice connecting to one-auth:0@default@cluster-one
```
2023-02-21 17:36:02 +00:00
Michael Wilson 2249d1cc17
SAML IdP sessions added to the API and cache. (#21937)
* SAML IdP sessions added to the API and cache.

SAML IdP sessions have now been added to the API and to the cache.

* Update lib/auth/sessions.go

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

* Revert changes to types.proto.

* Fix missing session ID, misnamed variable, gRPC update.

---------

Co-authored-by: rosstimothy <39066650+rosstimothy@users.noreply.github.com>
2023-02-21 17:26:10 +00:00
Jeff Pihach 5eafe86fa4
Remove usage of lodash methods (#21567)
* Create new local util lib to replace lodash.

* Replace usage of isInteger and debounce from lodash with highbar.

* Create isObject and runOnce utility methods.

* remove use of at, isObject, and once lodash method usage.

* remove map and transform lodash calls.

* Add memoize function to highbar.

* remove memoize lodash usage.

* remove merge and isEqual lodash methods and update other missing refs to highbar.

* convert the throttle to debounce.

* add throttle method to highbar.

* use the new throttle method instead of debounce where necessary.

* Add mergeDeep function for init config merge.

* remove lodash from the build process.

* Fix introduced bug in workspacesService.

* Added tests for highbar mergeDeep and expanded its functionality to support arrays.

* review updates.

* Added types to mergeDeep function.

* Add missing MapCache prototype methods.

* Add license notices, types and missing hash code.

* First pass at compare an array objects function.

* use new compareArrayObjs fn

* Add missing not

* Added types to arrayObjectIsEqual

* Add tests for arrayObjectIsEqual and fix some edge case bugs.

* update util fn name
2023-02-21 17:25:36 +00:00
Anton Miniailo 2f0c97d276
Correctly handle LOCAL command of PROXY protocol v2 in multiplexer (#22086) 2023-02-21 17:00:52 +00:00
Zac Bergquist 346146a670
Clean up the MFA modal (#22045)
Change the text on the MFA dialog to be less alarming.
Additionally, focus the OK button by default, so that users can
press enter to go straight to the MFA prompt without manually
clicking a button.

Closes #19042
2023-02-21 15:15:34 +00:00
Noah Stride 82098f7c2b
RFD0106: Machine ID Anonymous Agent metrics (#21920)
* Start machine id client analytics rfd

* Add notes on warnings to logs

* Add details on event collection

* Make it clear no additional anonymization is required

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

* Use environment variable for telemetry opt in

* Add proto for event submission

* Set RFD number

* Correct name for consistency.

Co-authored-by: Edoardo Spadolini <edoardo.spadolini@goteleport.com>

* Name fields for consistency

Co-authored-by: Edoardo Spadolini <edoardo.spadolini@goteleport.com>

* rename continous -> daemon

* Reflow text after PR fixes

* Add distinct_id field to event request

* Describe the UUID field

* Shorten and clarify attributes related to destinations

* Change env var for enabling telemetry

---------

Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
Co-authored-by: Edoardo Spadolini <edoardo.spadolini@goteleport.com>
2023-02-21 15:02:02 +00:00
Alex Fornuto b1d9fbad55
Docs: update fluentd guide (#21865)
* update fluentd guide

* Apply suggestions from code review

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

* Update docs/pages/management/export-audit-events/fluentd.mdx

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

* Update docs/pages/management/export-audit-events/fluentd.mdx

* Update docs/pages/management/export-audit-events/fluentd.mdx

---------

Co-authored-by: Paul Gottschling <paul.gottschling@goteleport.com>
2023-02-21 14:57:03 +00:00
rosstimothy 920261cd1f
Add DatabaseService KeepAlive type (#22042)
The DatabaseService was using the KeepAlive_Database type instead
of a new dedicated type. This caused the keepalive to fail because
the backend key that was created didn't actually exist which results
in #21454.

This adds the appropriate KeepAlive type and uses it in the appropriate
places.

Fixes #21454
2023-02-21 14:55:06 +00:00
rosstimothy 9440763235
Implement transport client (#21947)
Provides a client that can be used to connect to and interact with
the transport service in `lib/srv/transport`. The client abstracts
the fact that a gRPC stream is being used for the `net.Conn` created
by `DialCluster` and `DialHost`.

This also moves `lib/utils/grpc/stream` to `api/utils/grpc/stream`
so that the client and server can make use of the same stream
abstractions.

Part of #19812
2023-02-21 14:38:57 +00:00
Rafał Cieślak 515638b5f9
Import jest-canvas-mock in teleport tests which import xterm paths (#22063) 2023-02-21 14:19:19 +00:00
Alex McGrath a15e987476
RFD 57: Add agentless mode section and AWS tags forwarding section (#18676)
* Add agentless mode section to ec2 discovery rfd

* Update the labels section

* use `teleport join` command instead of secret-manager

* update to include a full teleport join command example

* Add cert rotation section

* remove AWS Tags section
2023-02-20 11:23:33 +00:00
Peter Nduati 9089e56c66
Extend security context to proxy init container wait-auth-update. (#21969)
* Extend security context to proxy InitContainer.

* Set securityContext for initContainers
2023-02-18 02:08:52 +00:00
Steven Martin 27c09fd554
Add non-HA Teleport cluster to Deploy with Helm links (#22028)
* Add non-HA Teleport cluster to Deploy with Helm links

* Update phrasing

* verbiage change

Co-authored-by: Alex Fornuto <alex.fornuto@goteleport.com>

* verbiage change

Co-authored-by: Alex Fornuto <alex.fornuto@goteleport.com>

---------

Co-authored-by: Alex Fornuto <alex.fornuto@goteleport.com>
2023-02-17 21:45:18 +00:00
Jonathan Lassoff b161c1d520
Clarifications in Okta SSO doc (#21777)
Clarify the usage of the `attributes_to_roles` parameter and reorder some
mapping keys for clarity in the example SAML connector resource.

Co-authored-by: Alex Fornuto <alex.fornuto@goteleport.com>
Co-authored-by: Paul Gottschling <paul.gottschling@goteleport.com>
2023-02-17 21:36:14 +00:00
Alan Parra 98f6b4e9bc
Mention --mfa-mode in the tsh mfa add flow (#22018)
* Remove Windows admonition, not true since v11

* Mention --mfa-mode in the `tsh mfa add` flow
2023-02-17 21:11:49 +00:00
rosstimothy 9f62e75cbd
Ensure UpdateRemoteCluster updates all fields (#22024)
The ConnectionStatus of the RemoteCluster resource was never being
set in UpdateRemoteCluster causing the backend to always contain
the original value. GetRemoteCluster, unfortunately, does an update
of the resource, yet it always returned the correct information, which
made things very confusing since `tctl get` didn't reflect the
actual backend. To make matters worse the initial value was not
explicitly set which meant it defaulted to an empty string.

A call to SetConnectionStatus was added to UpdateRemoteCluster so
it's value is actually persisted. Trusted Clusters are also now
explicitly initialized with status offline to avoid ambiguity. The
actual status of the resource will be updated appropriately when
the tunnel connections are verified.

Additionally TestRemoteClustersCRUD was added to capture this issue
and prevent any regressions.

Fixes #22006
2023-02-17 21:10:19 +00:00
dependabot[bot] c0b2263456
Bump golang.org/x/net from 0.6.0 to 0.7.0 in /api (#22010)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.6.0 to 0.7.0.
- [Release notes](https://github.com/golang/net/releases)
- [Commits](https://github.com/golang/net/compare/v0.6.0...v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-17 20:30:26 +00:00
Lisa Kim 1dae784ed4
[Web:Discover] Add missing checks (#21862)
* Add missing failed fetch token emit event

* Emit the correct discovered count for desktops
2023-02-17 20:13:52 +00:00
dependabot[bot] bc7af5565d
Bump golang.org/x/net from 0.6.0 to 0.7.0 (#22012)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.6.0 to 0.7.0.
- [Release notes](https://github.com/golang/net/releases)
- [Commits](https://github.com/golang/net/compare/v0.6.0...v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-17 20:06:05 +00:00
Michael Wilson 4d0fee507b
Support proxy reading of SAML IdP CA. (#21949)
* Support proxy reading of SAML IdP CA.

GetCertAuthority was not respecting CA type where clauses because the CA was
not being passed into the AccessChecker properly. This has been fixed.
Additionally, the SAML IdP CA's validation has been fixed so that it supports
more than 1 active key pair during key rotations.

With all this, the proxy will now be able to read the SAML IdP CA.

* Update lib/auth/tls_test.go

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

* Only parse the cert pem if the key can't be parsed.

* Fix imports.

---------

Co-authored-by: Alan Parra <alan.parra@goteleport.com>
2023-02-17 19:57:07 +00:00
Steven Martin bb15fbbf6f
Updates to windows getting started (#21946)
* Updates to windows getting started

* verbiage change

Co-authored-by: Alex Fornuto <alex.fornuto@goteleport.com>

* Updates based on comments

* Lint fix

* Update for comments

* Lint fix

* lint fix

* Change node example dns

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

* verbiage change

Co-authored-by: Alex Fornuto <alex.fornuto@goteleport.com>

---------

Co-authored-by: Alex Fornuto <alex.fornuto@goteleport.com>
Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
2023-02-17 19:10:54 +00:00
STeve (Xin) Huang 088b4370c5
[docs] add a note on rds:DescribeDBClusters (#22007)
* [docs] add a note on `rds:DescribeDBClusters`

* add a comma
2023-02-17 18:52:11 +00:00
Zac Bergquist 64bcbf33cd
Improve formatting for TLS cert requests (#21954)
The deafult string formating cluttered the logs with a bunch
of raw bytes and memory addresses, which aren't helpful.
2023-02-17 18:40:09 +00:00
Zac Bergquist caec32a2a4
CI: bypass OS compatibility check for some changes (#21989)
Docs changes, web UI changes, or RFD updates cannot change the
OS compatibility of Teleport, so allow them to bypass the
OS compatibililty check.
2023-02-17 18:39:58 +00:00