Commit graph

12803 commits

Author SHA1 Message Date
matheus b2ed518608
Add new field to license spec (#23194)
* Add new feature source field to license

* Add godoc

* Add OIDC, SAML, fips access controls, and hsm

* Add SetCloudFeatures method

* Revert "Add SetCloudFeatures method"

This reverts commit 121187fda6.

* Revert flags for OIDC, SAML, HSM and Access Controls

* Fix godoc typo

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

---------

Co-authored-by: Michelle Bergquist <11967646+michellescripts@users.noreply.github.com>
2023-04-17 12:52:09 +00:00
Rafał Cieślak dd9c042a68
Connect: Show resource search errors in the search bar (#24520)
* Move tshd test helpers to a better location

* Support passing no props to tshd test helpers

* Refactor ResourcesService getServerByHostname tests

* Move pluralize to shared package

* SearchContext: Rename `opened` to `isOpen`

* ActionPicker story: Show auxiliary items in a separate column

* ActionPicker: Split getClusterName into two functions

getClusterName used to not return the name of the cluster if there's only
a single cluster present. Some places needed to get the cluster name
no matter what, such as the modal with resource errors that will be added
to ActionPicker.

* Refactor resource search to use Promise.allSettled

* useSearchAttempts has been renamed to useActionAttempts
* useActionAttempts returns resourceSearchAttempt in order to supply errors
  from ResourcesService.searchResources to ActionPicker.

* SearchContext: Implement lockOpen

We'll want to display error details in a modal. While the user interacts
with the modal, we don't want to close the search bar and reset the results.

So instead, we are going to force the search bar to stay open until the
user closes the modal. This will use the lockOpen function from this commit.

* Add modal for showing resource search errors

* Refactor mockedSearchContext to not be a top-level mutable var

* Show an item in search bar with resource search errors

* ResourceSearchError: Add instanceof check to tests, include clusterUri in message

* Make isLockedOpen into a ref

* Use table tests for lockOpen tests

* Revert "Make isLockedOpen into a ref"

This reverts commit 07f4206cc2.

* Move capitalization to ResourceSearchError.messageWithClusterName

* ResourceSearchError: Use `public` in constructor

* Connect: Improve focus management in search bar (#24665)
2023-04-17 12:46:39 +00:00
Krzysztof Skrzętnicki 477e1b108a
OpenSearch audit log improvements. (#24437)
* OpenSearch audit log improvements.

* Run prettier.

* Add missing license.

* Review: share event formatting code.

* Review: add comments.
2023-04-17 12:19:29 +00:00
Gabriel Corado a0e0ec77c0
chore(testplan): add sql server with pkinit and rds proxy (#24661) 2023-04-17 10:04:59 +00:00
Marek Smoliński da13cffd0b
Update Mongo Driver 1.10.4 -> 1.10.6 (#24660) 2023-04-17 09:53:43 +00:00
STeve (Xin) Huang 0174f95741
TLS Routing behind LB test plan update (#24636) 2023-04-17 09:16:57 +00:00
Cam Hutchison 05aa315008
Remove funny submodule that is not a submodule (#24657)
Somehow this `helm3-unittest` "submodule" got committed but without the
corresponding `.gitmodules` change, so git gets rather confused about
it. Just remove it.
2023-04-17 04:43:43 +00:00
fheinecke 4d3145b5bf
Fixed OPRT migration issues (#24655)
* Fixed OPRT migration issues

* Removed package-to-test from unsupported teleport-ent-updater package
2023-04-16 20:32:20 +00:00
fheinecke af97f525e2
Flipped environment logic for OS package promotion (#24639) 2023-04-16 13:34:27 +00:00
Zac Bergquist fb6e7912fd
Fetch cloud environment in parallel (#23472)
This speeds up the amount of time it takes to determine which cloud
environment Teleport is running on, and properly propagates a context
as an argument instead of stashing it in a config struct.
2023-04-15 21:45:32 +00:00
Andrey Bulgakov 5b2998a455
Generic read guards (#24425) 2023-04-15 20:52:16 +00:00
Andrey Bulgakov ad80fa3e17
Partial cache healthiness (#24080)
* Partial cache healthiness

* IsSupersetOf -> Contains

* NewWatchStatus fixes

* make map[kindSubKind]types.WatchKind with capacity

* fixed TestRootNetwork?

* post-rebase fix

* fixes regarding docs/comments

* const noSubKind = ""

* preallocate slices for validKinds

* DisablePartialHealth

* test fixes

* fixed struct logging field name

* use custom identity in TestEventsPermissionsPartialSuccess

* fixed TestNodeCAFiltering

* don't look at versions in events APIs

* RFD state: implemented
2023-04-15 20:07:43 +00:00
fheinecke 4c0113df9e
Removed "workflow-tag" argument from OPRT GHA call (#24637) 2023-04-15 19:38:49 +00:00
fheinecke 5001cfb5ac
Added missing mkdir call when determining if a release is a pre-release. (#24634)
* Added missing mkdir call

* Updated to calculate dirname at dronegen time
2023-04-15 15:10:01 +00:00
Steven Martin e481181317
docs: update audit results faq for cloud (#24630) 2023-04-15 01:44:57 +00:00
Yassine Bounekhla b1797d1c35
update e ref (#24632) 2023-04-14 22:41:51 +00:00
Alex Fornuto d0a0fba8e7
add comment specifying kubernetes user (#24555) 2023-04-14 21:58:06 +00:00
Yassine Bounekhla 5a46f044b5
add themes to webui (#24507) 2023-04-14 21:45:23 +00:00
Przemko Robakowski 417ced7df4
Add building Windows Authentication Package to Drone (#23811)
* Add building Windows Authentication Package to Drone

* Add building Windows Authentication Package to Drone

* Set test build version

* Test trigger

* Trigger + version update

* fix path

* path + version

* trigger?

* fix windres

* fix windres

* fix windres

* fix windres

* fix windres

* handle windows windres

* handle windows windres

* update e

* gocache

* gocache

* gocache

* update e

* go version

* go version

* go version

* tes

* tes

* test

* bump e

* bump e

* dronegen

* concurrent

* tag trigger

* bump version

* trigger

* trigger

* trigger

* bump e

* bump e, cleanup build

* fix signing

* fix signing

* rename

* fix signing

* restore trigger

* restore trigger

* bump version

* relcli update

* bump version

* bump version

* restore version

* restore e

* dronegen

* dronegen

* bump e

* dronegen

* dronegen

* dronegen
2023-04-14 21:09:17 +00:00
Yael Jay Perez a35383ad2f
Add SSL Certificates to Usage Script (#24443)
* Added SSL Certificate install

* Update examples/teleport-usage/Dockerfile

Co-authored-by: Russell Jones <russjones@users.noreply.github.com>

* Update examples/teleport-usage/Dockerfile

Co-authored-by: Russell Jones <russjones@users.noreply.github.com>

---------

Co-authored-by: Russell Jones <russjones@users.noreply.github.com>
2023-04-14 20:40:29 +00:00
Steven Martin a268c4e45e
docs: remove ignored user parameter in tsh login example (#24588)
* docs: remove ignored user parameter in tsh login example

* update language related to CLI

* Update phrasing
2023-04-14 19:40:59 +00:00
fheinecke 5690cb007e
Migrate publishing of new APT and YUM repos to GHA (#24350)
* Deleted OPRT from this repo

* Migrated dronegen to call gha workflow

* Removed dead pipelines

* Removed unused function to appease linter

* Accounted for private repo promotions

* Updated to use package name filter

* Accounted for teleport-ent-updater publishing
2023-04-14 19:42:53 +00:00
STeve (Xin) Huang b1941aaa85
TLS routing behind LB support for Auth, SSH, Reverse tunnel (#23866)
* ALPN connect test improvements

* fix typos

* remove extra period

* simplify error check

* moving things over

* tsh dials

* reverse tunnel

* fix auth connect

* move ping

* add ssh support

* add HTTP client support

* Move ALPN dialer, ALPN conn upgrade, Ping conn to api

* beatify

* add test

* beautify round 2

* fix timeout

* Implement alpn-ping upgrade for reversetunnel and ssh

* clean up

* fix proxy test

* minor refactor

* remove WebProxyAddr

* require IsALPNConnUpgradeRequiredFunc

* add tlsRoutingWithConnUpgradeConnect

* fix lint

* simplify

* remove debug log and change unknown upgrade type to 404

* Force new proxy client to use web proxy when TLS routing is enabled
2023-04-14 19:22:23 +00:00
rosstimothy 640bd01640
Improve performance of MFA ceremony (#24250)
To date clients attempting to access a resource first have to call
`proto.AuthService/IsMFARequired` to determine if an mfa ceremony
is needed for access to a resource. In an effort to reduce an
extra round trip to the Auth server this can can be bundled into
`proto.AuthService/GenerateUserSingleUseCerts`.

In order for RBAC to determine if mfa is required for SSH sessions
the OS login of the session must be known. To accomodate this a
new `SSHLogin` field was added to `proto.UserCertsRequest`.

The response to the initial request of the stream now contains a
`proto.MFARequired` enum which indicates whether mfa is required,
not required, or it's unknown if mfa is required. The last variant
should only be returned when the `SSHLogin` field is unset in the
initial request.

The `(auth.Server) isMFARequired` check was also modified for nodes
to make use of `ListResources`. Instead of retrieving **all** nodes
into memory and finding the matching ones, a request is made to
`ListResources` with the `SearchKeywords` populated with the target
from `proto.IsMFARequiredRequest_Node.Node.Node`. Care was taken
to filter out any matches from labels to preserve the original
matching behavior.
2023-04-14 19:08:28 +00:00
Marek Smoliński 6de0545ba2
Try to fix TestAgentPoolConnectionCount (#24616) 2023-04-14 18:37:05 +00:00
Lisa Kim ab1206a133
Discover: Add new usage reporting events (#24567)
* Add aws connect account and enroll rds dbs event

* Update FE types to reflect backend changes

* Rename

* Add missing convert usager
2023-04-14 18:23:18 +00:00
Lisa Kim 9109f5946c
Update e-ref (#24617) 2023-04-14 17:25:54 +00:00
Gavin Frazar 648618a3c4
skip flaky test TestAgentPoolConnectionCount (#24566) 2023-04-14 16:58:11 +00:00
Steven Martin d90c4323bd
docs: update k8s gke discovery to use zone variable consistently (#24598)
* docs: update k8s gke discovery to use zone variable consistently

* Update docs/pages/kubernetes-access/discovery/google-cloud.mdx

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

* Update vm and token generation

* fix token generation

* fix code formatting

---------

Co-authored-by: Paul Gottschling <paul.gottschling@goteleport.com>
2023-04-14 16:26:15 +00:00
Andrew LeFevre 61f99cd724
let SFTP server figure out remote users home directories (#24254)
Previously a Teleport client using SFTP would resolve remote host user
home directories by making a subsystem request to a Teleport server
which would return the home directory. The problem was the subsystem
request counted as an open session, which could make the SFTP file
transfer fail. This was frustrating and didn't make much sense, but
after reading the SFTP specification again I realized that SFTP servers
are to handle relative paths by assuming they start at the user's home
directory. So let the server figure out the correct path and remove any
tilde prefixes from remote paths.
2023-04-14 16:23:14 +00:00
Lisa Kim c17a9da802
WebDiscover: Add delete integration operation (#24590)
* Fix malformed JSON error response for 200

* Fix making response when fetching integrations

* Create re-usable integration ops hook (only delete for now)

* Create delete dialog

* Allow deleting integrations

* Fix lint
2023-04-14 16:08:59 +00:00
rosstimothy 483373bef2
Add slow mfa tests to Flaky Test Detector bypass (#24602)
TestSSHOnMultipleNodes and TestSSHWithMFA are too slow to complete
within the 10m required by the flaky test detector. Bypassing them
so that changes to them can be merged.
2023-04-14 16:07:28 +00:00
Lisa Kim 46c05b321a
Add the new access verb use to web user context (#24463)
* BE: Add field for verb use for user ACL

* FE: Add the new use access verb

* Only define use verb for relevant resources
2023-04-14 16:04:59 +00:00
Andrew LeFevre 76a15bd007
Update OpenSSH docs with agentless information (#23359)
* updated OpenSSH docs with agentless information

Going forward, agentless nodes are the preferred way to manage OpenSSH
nodes, so update the documentation to describe how to add them to a
cluster.

* add 'uuidgen' to cspell list of ignored words
2023-04-14 15:55:52 +00:00
Grzegorz Zdunek c81ed24e56
Update Electron to 22.3.6 (#24596) 2023-04-14 15:09:10 +00:00
Alexey Dubkov 210d628714
Change port-forwarding completion logs to debug (#24424)
Co-authored-by: Tiago Silva <tiago.silva@goteleport.com>
2023-04-14 15:07:36 +00:00
Steven Martin 64448b1b0e
Renders user auth types in User List in expected capitalization (#23514)
* Renders user auth types to match expected capitalization for GitHub, SAML and OIDC

* Update test to use cap OIDC

* Update SAML and GitHub auth type test compare

* UI lint fix

* Applied comments for function location and import

* lint fix

* lint fix

* fix typecheck
2023-04-14 14:10:36 +00:00
Rafał Cieślak a08601e789
Connect: Enable search bar feature flag by default (#24595) 2023-04-14 12:59:52 +00:00
Rafał Cieślak be498cf9dd
Update missing color in Connect, reorder More Options menu items (#24593) 2023-04-14 12:59:25 +00:00
Marek Smoliński a949c6d4ba
Oracle Testplan update (#24592) 2023-04-14 12:15:57 +00:00
Alex McGrath d873cba9e3
Add fallbacks for getting proxy address in bootstrap (#24523)
* add fallbacks for getting proxy address in bootstrap

* Resolve comments
2023-04-14 11:17:58 +00:00
Ryan Clark ce939bef15
Vite fixes (default exports, circular dependency) (#24591)
* Fix Vite production build with react-day-picker

* Fix circular dependency

* Remove unneeded typings

* Use an esmodule interop instead of Vite config
2023-04-14 11:11:24 +00:00
Grzegorz Zdunek e2bb8b747e
Connect: Do not hide any filters if the search term limits the list of clusters to just one cluster (#24447)
* Do not hide any filters if the search term limits the list of clusters to just one cluster

* Rename `ExtraComponent` -> `ExtraTopComponent`

* Use `active` prop only for `InteractiveItem`
2023-04-14 11:05:09 +00:00
Tobiasz Heller afb2e2b652
Add configuration with optional timeout to AcquireLock (#24559)
* Add configuration with optional timeout to AcquireLock

* rename to RetryInterval
2023-04-14 10:26:40 +00:00
Noah Stride c769ad3252
TPM support in Device Trust protobufs (#24518)
* Add protos for TPM enrollment ceremony

* Add modifications to Device object for TPM support

* Add new fields to the resource type

* Add "Der" prefix to tpm_attestation_key field for consistency

* Add test for conversion code

* Fix incorrect field number for proto message

* Allow empty string in resource for unspecified

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

* Rename DeviceAttestationType

* Clarify ActivateCredential process

* Finish renaming to DeviceAttestationType

* Use unspecified

---------

Co-authored-by: Alan Parra <alan.parra@goteleport.com>
2023-04-14 10:16:07 +00:00
Grzegorz Zdunek 4b31ba88ab
Connect: Create dedicated functions for connecting to resources (#24445)
* Create dedicated functions for connecting to resources

* Do not use spread operator

* Rename `params` -> `telemetry`

* Rename `connectToNode` -> `connectToServer`

* Remove unused imports
2023-04-14 09:46:06 +00:00
Marek Smoliński bf695e0cb4
Database Agent - remove Support for UserCA (#23758) 2023-04-14 07:57:38 +00:00
teleport-post-release-automation[bot] 9a0a8bae58
[auto] Update AMI IDs for 12.2.3 (#24587)
Co-authored-by: GitHub <noreply@github.com>
2023-04-14 03:40:30 +00:00
Michael Wilson c7c8bf5ab8
Add cleanup time and last transition time to OktaAssignment. (#24466)
* Add cleanup time and last transition time to OktaAssignment.

The OktaAssignment now has a cleanup time that will be specified on creation
and each action has a LastTransition time. The cleanup time specifies when
the Okta service should clean up the Okta assignment, and the last transition
time will be used to show when the action last transitioned.

It should be noted that cleanup time is maintained separately from the notion
of expiry as we want Okta assignments to stick around until they're cleaned
up, otherwise we have no record of what Teleport has done via the Okta API.

LastTransition time can be used to timeout actions that have been stuck
processing for too long.

* Ensure Okta timestamps are UTC.
2023-04-14 00:42:15 +00:00
Nic Klaassen 60b91ff4fa
Update e ref (#24575)
* update e ref

* update to latest
2023-04-13 22:30:52 +00:00