Commit graph

8846 commits

Author SHA1 Message Date
Brian Joerger 8d80aa39bd
Remove unnecessary X11 test that fails on MacOS (#13759) 2022-06-22 22:36:31 +00:00
Alan Parra be460541d1
Do not dereference assertion before checking for nil (#13761)
Fixes comment from #13712 on master.
2022-06-22 21:47:12 +00:00
Isaiah Becker-Mayer 215ba11562
fix flaky_test.md (#13767)
the flaky_test.md template wasn't showing up on the "New Issue" page, I believe because it was missing these single quotes in the Title field.
2022-06-22 17:05:58 -04:00
Joel 74f2440683
Always allow session owners to join own sessions + only list active trackers in WebUI (#13660) 2022-06-22 19:56:45 +00:00
Paul Gottschling f066863857
Move Auth/Proxy-only Kubernetes guides (#13068)
See #12654

The Kubernetes Access section includes guides for using the Kubernetes
Service as well as guides for running the Auth and Proxy Service on
Kubernetes. This is misleading, since (a) you can run the Auth/Proxy
on Kubernetes without using Kubernetes Access and (b) you can use
Kubernetes Access without running the Auth/Proxy on Kubernetes.

This change focuses on the pages in:

/docs/pages/kubernetes-access/getting-started/

- Move docs/pages/kubernetes-access/getting-started guides that don't
  relate to Kubernetes Access out of this section, and change the
  docs/pages/kubernetes-access/getting-started.mdx page to point to
  the current "Agent" guide.

- Edit the "docs/pages/getting-started.mdx" menu page to accommodate the
  Kubernetes guides. Previously, this page included separate links for
  each edition's getting started guide. To add the Kubernetes Cluster
  guide, I organized the links in the "Deploy to production" section into
  a TabItem for each Teleport edition. There are separate links to the
  Kubernetes Cluster guide, one for OSS users and one for Enterprise
  users. These links also take users to the appropriate scope.
2022-06-22 19:29:32 +00:00
Brian Joerger 7ce55a72b4
Add tsh docs for x11 forwarding (#13647) 2022-06-22 17:46:16 +00:00
Lisa Kim 5a516866c1
Add tests for search based access requests in UI (#13541) 2022-06-22 17:12:53 +00:00
Joel aaa6ea73dd
Correctly handle Firestore pagination with DocumentID cursors (#13017) 2022-06-22 16:48:21 +00:00
Paul Gottschling 6c417941e4
Add Enterprise info to the Installation page (#13447)
Fixes #12924

The Linux and MacOS sections of the Installation page only included
instructions for the OSS edition of Teleport. This change adds
Enterprise instructions to prevent Enterprise users from downloading
the wrong Teleport edition.

This also changes the install-linux partial to accommodate Enterprise
customers.
2022-06-22 16:19:10 +00:00
Alex McGrath 72da658edf
Return an already exists error if the user was found but service group was not (#13666) 2022-06-22 15:57:54 +00:00
Lisa Kim 71bc57cc21
Move predicate err check earlier, inside RetryWithRelogin (#13368)
Fixes a bug in tsh ls resources, where users were prompted
to re-login when it was only a predicate query error. 
`RetryWithRelogin` now aborts the re-login attempt if the 
error is of type predicate.
2022-06-22 11:19:49 -04:00
Alex McGrath 5a452f16f1
use editor instead of admin in tctl usage example (#13557) 2022-06-22 10:58:35 +00:00
Rafał Cieślak dc3518829f
Update test plan for Teleport Connect (#13686) 2022-06-22 09:51:38 +00:00
Paul Gottschling 15c7a9ad18
Fix Teleport welcome screen image (#13042)
The Linux Server getting started guide shows the wrong screenshot
when referring to the Teleport welcome screen. This change uses
a screenshot of the view an unauthenticated user would see when
first visiting the Web UI.
2022-06-21 21:26:52 +00:00
Alan Parra 1552e1a826
Use .json extension for Gon config file (#13667)
Gon configuration files need a proper extension, otherwise it errors.
2022-06-21 20:03:32 +00:00
Alan Parra 97a2dd2a5d
Rebuild FIDO2 dependencies on failure (#13410)
Attempt to detect builder environment inconsistencies by compiling a toy FIDO2
program - if this fails, then clear the cache and try again.

Builders are sometimes getting into inconsistent states, this should help
avoiding manual intervention in order to fix them.
2022-06-21 18:30:54 +00:00
Isaiah Becker-Mayer e2dac5c099
adds flaky test issue template (#13577) 2022-06-21 18:06:32 +00:00
Christopher Cooper c5ebb53d79
implements setting FIPS support on AWS S3 and DynamoDB (#13388)
use FIPS for AWS S3 and DynamoDB when --fips flag is passed
[#11291, #13222]
golint
reorder to allow explicit override

Update lib/events/dynamoevents/dynamoevents_test.go

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

review comments

review comments

review comments

Update lib/events/dynamoevents/dynamoevents.go

Co-authored-by: Roman Tkachenko <roman@goteleport.com>

move fips config to cluster audit config

review

address nits

Update lib/events/fips.go

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

review comments

review comments
2022-06-21 13:08:06 -04:00
Alan Parra f1fe4a6e24
Favor newer Touch ID credentials within the allowed set (#13672)
Favor newer Touch ID credentials in the allowed set for MFA, or just the newer
credential for passwordless.

Fixes a capture-by-reference bug and adds coverage for it.

Issue #13340.

* Add tests for Touch ID credential-choosing logic
* Favor newer Touch ID credentials within the allowed set
* Warn about origin vs RPID mismatch
2022-06-21 16:14:56 +00:00
Paul Gottschling 839a5c2d41
Ensure tctl commands include login instructions (#12944)
* Ensure tctl commands include login instructions

See #10192

Add the tctl.mdx partial or a "tsh login" command in some pages that
include example tctl commands. Note that this change does not address
SSO guides, which will be handled separately.

Where a guide requires a complete restructuring to provide full context,
"docs/pages/application-access/guides/connecting-apps.mdx", I've added
"tsh login" instruction above the first tctl command.

* Respond to PR feedback
2022-06-21 15:45:06 +00:00
Paul Gottschling 4e83be05f4
Refine the organization of /docs/getting-started (#12923)
Fixes #12921

This removes the DigitalOcean link on the /docs/getting-started page
and moves the DigitalOcean guide into /docs/setup/deployments, which is
a more appropriate home. Now, the "Deploy to production" section of
/docs/getting-started only includes links to the Getting Started
guide for the Open Source, Cloud, and Enterprise editions, making it
clearer to users that there are three editions and that we have separate
content for each one.

This also changes the href of the Teleport Cloud link on the Getting
Started page to /cloud/getting-started/?scope=cloud to be
consistent with the other links, which direct users to guides.
2022-06-21 15:32:16 +00:00
Paul Gottschling d7ca93195d
Edit the Machine ID getting started guide (#12868)
* Edit the Machine ID getting started guide

Fixes #11806

- Add more scope-specific information to the Prerequisites section
- Add the tctl.mdx partial to make it clearer for each scope how to
  connect to the cluster to run tctl commands.
- Add the Cloud tenant address to the "tbot start" example command for
  Cloud users.

* Respond to PR feedback
2022-06-21 15:20:27 +00:00
Paul Gottschling d3db006514
Remove outdated Ansible guide link (#12767) 2022-06-21 15:09:06 +00:00
Paul Gottschling b4b7ef33ba
Update Teleport Enterprise information (#12641)
Fixes #12582

Some of our Enterpise information is out of date.

Teleport Enterprise introduction:

- Add information on HSM support and Moderated Sessions

Teleport FAQ:

- Update the edition comparison table.
- Promote each question to an H2 header, allowing it to appear in the
  table of contents sidebar.
- Update some outdated terms.
- Convert the edition comparison table from HTMl to Markdown for ease
  of reading.
- Remove the version support table since it is long out of date.
2022-06-21 14:48:28 +00:00
Joel caff635ace
Test Moderated Sessions RBAC engine for multiple session types per test case (#13506) 2022-06-21 14:38:51 +00:00
Zac Bergquist ca520999c1
Improve log message when we fail to retrieve the client cert pool (#13585) 2022-06-20 22:52:15 +00:00
Edoardo Spadolini 8f5382f40d
Add CA rotation flows to the test plan (#13512)
* Add CA rotations to the test plan

* Add trusted cluster checks

* Add kube access to CA rotations

* Correct database access and CA rotation behavior
2022-06-20 09:39:30 +00:00
Michael McAllister 015e11bc85
Log initilization after CheckAndSetDefaults (#13090)
Super minor, but in this case we log that we're initializing the backend
_prior_ to cfg.CheckAndSetDefaults which means that if we are indeed
using the default the following will be printed:

> {"caller":"dynamo/dynamodbbk.go:206","component":"dynamodb","level":"info","message":"Initializing
backend. Table: \"example-table\", poll streams every
0s.","timestamp":"2022-06-01T23:49:49Z"}

Which is misleading as it's not polling the stream every "0s", it's
polling every 1s as per backend.DefaultPollStreamPeriod

Signed-off-by: Michael McAllister <michael.mcallister@goteleport.com>
2022-06-20 06:39:42 +00:00
Norbert Szetei 0ab9716aac
oss fuzz integration (#13473)
* Update api/types/fuzz_test.go
* do not fail if the file is missing
* missing go-118-fuzz-build fix

Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
2022-06-18 21:28:07 +00:00
Zac Bergquist 12e09b02f2
Deflake TestGRPCErrorWrapping (#13633)
This test would occaisonally fail with:

    === RUN   TestGRPCErrorWrapping
         grpc_test.go:125:
            	Error Trace:	grpc_test.go:125
            	Error:      	Received unexpected error:
            	            	EOF
            	Test:       	TestGRPCErrorWrapping

According to the GPRC docs
(https://pkg.go.dev/google.golang.org/grpc#section-readme)
io.EOF indicates that the server closed the stream and
that "the status of the stream may be discovered using ReadMsg."

Since the test is ultimately attempting to assert that the error
from Recv() is properly wrapped in an "already exists" error, we
tolerate the io.EOF on Send() and continue to check the error from
Recv().

I've run with this change for about 150K iterations and haven't seen
a failure. Prior to this change we would get a few failures per 10K
iterations.
2022-06-18 18:03:14 +00:00
Alex McGrath cc777b4d09
Dont log teleport-service group not found, down grade macos warning to debug (#13556)
* Dont log `teleport-service` group not found

* Use debug instead of warn for user creation at config time
2022-06-18 08:16:52 +00:00
Nic Klaassen a3e8bdcdc6
serialize hsm tests (#13632) 2022-06-18 00:02:45 +00:00
Jakub Nyckowski 8470e473fa
Remove Clang from CentOS 7 Docker buildbox (#13614) 2022-06-17 22:14:34 +00:00
Nic Klaassen faa4094bbb
enforce resource access request license (#13629) 2022-06-17 20:43:39 +00:00
Zac Bergquist 157158943c
deflake TestAgentForwardPermission (#13600)
Prevent the filesessions uploader from writing to disk by using
a sync recording mode with a discard emitter.

Fixes #13565
2022-06-17 19:54:12 +00:00
Andrew Burke 19b2650481
Fix database role fetch for tsh db ls --all (#13617)
This change fixes the logic for fetching up-to-date roles in tsh db ls --all. The logic is now the same as tsh db ls.
2022-06-17 18:23:19 +00:00
David Boslee e52face20f
Fix proxy peering kube access (#13606)
This passes along the connected proxy ids for kube access, fixing
connecting to a kube agent through a peer proxy.
2022-06-17 17:24:22 +00:00
Nic Klaassen f4eb28223e
Check if resource request is possible before attempting (#13586) 2022-06-17 16:57:44 +00:00
Tiago Silva 51f673db94
Fix panic when tsh kube exec is invoked (#13603) 2022-06-17 16:17:30 +00:00
Zac Bergquist 45a96bcb54
Update e ref (#13609) 2022-06-17 15:44:52 +00:00
Zac Bergquist 8c7eb94c4b
Fix CentOS 7 builds after upgrading prost (#13579)
Recent Rust dependency upgrades include a newer version of prost.
This new version no longer ships embedded protoc binaries, and
instead tries to build protoc from source. This would require us
to install cmake on our buildboxes. We want to avoid this and
instead leverage the version of protoc already installed.

This change was made to the standard buildbox, but the CentOS 7
buildbox was missed.

Additionally, I noticed that Rust was installed in
Dockerfile-centos7-fips, but not in Dockerfile-fips, which means
the FIPS binaries have different functionality depending on which
version you use. To correct this, I removed Rust from the CentOS 7
FIPS builds (since the Rust features are not FIPS compliant anyway).
2022-06-17 15:05:39 +00:00
Brian Joerger 2aae5b5899
Fix SSO AuthRequest backwards compatibility. (#13589) 2022-06-17 01:21:29 +00:00
fheinecke f688365efa
Added migrations for latest release (#13498)
* Added migrations for latest release

* Removed migrations post run
2022-06-16 23:30:47 +00:00
Roman Tkachenko 8d9a83b1ff
Use teleport11 buildbox for tests (#13572) 2022-06-16 23:04:32 +00:00
rosstimothy 14ebab8b96
Manually instrument cache.Cache (#13318)
Adds a `trace.Tracer` to the `cache.Cache`so
that all operations can be traced. Also, updates
the `utils.FnCache` to link the `context.Context`
passed to the loadFn to any current spans. This
will allow any fetches made by the `FnCache` to
be associated with the call that lead to loading.

Note: There are a few methods in the `auth.Cache`
interface which do not take a `context.Context`.
For the time being all spans for these calls use
a `context.TODO` and will be updated in the future,
where the changes can be made on a per method basis.
2022-06-16 20:19:54 +00:00
Zac Bergquist 895ed4d5dc
⬇️ downgrade Rust to 1.58.1 (#13544)
Newer versions of Rust increase our minimum GLIBC requirement,
which is not acceptable at this time.
2022-06-16 19:49:26 +00:00
Isaiah Becker-Mayer 2971f64235
RDP <--> TDP Translation Architecture (#12615) 2022-06-16 17:11:22 +00:00
Forrest Marshall 6b7bd68ce4 fix store removals 2022-06-16 09:45:26 -07:00
Noah Stride 796e37bdbc
Support configuration teleport.join_params.join_method "token" (#13559)
* Support configuration `teleport.join_params.join_method` "token"

* support loading token name from file

* update tests

* update documentation for AuthToken to hint towards deprecation
2022-06-16 15:22:49 +00:00
Paul Gottschling 78c1450b6c Respond to PR feedback 2022-06-16 09:33:33 -05:00