Commit Graph
658 Commits
Author SHA1 Message Date
rosstimothyandAlan Parra de1b2177cf Drop custom gRPC chain functions (#30672)
Modifies `auth.Middleware` to return a slice of interceptors
and uses `grpc.ChainUnaryInterceptor` and `grpc.ChainStreamInterceptor`
instead of our custom `utils.ChainUnaryServerInterceptors` and
`utils.ChainStreamServerInterceptors` equivalents.

Co-authored-by: Alan Parra <alan.parra@goteleport.com>
2023-08-18 15:37:31 +00:00
Forrest 4e66a6fc67 support case-insensitive routing option (#29320)
* support case-insensitive routing option

* update docs
2023-08-17 00:48:19 +00:00
Andrew LeFevre b029928a11 fix forwarding a SSH agent in a Cygwin environment (#29068)
* fix forwarding a SSH agent in a Cygwin env

* added more comments

* use os.Getenv

* add examples to regex vars, make formatting of guid more clear

* parse strings as uints, improve error messages

* make it more clear uint32s are used for UIDs

* turns out calling "bash" isn't needed
2023-08-16 20:38:30 +00:00
Alan Parra 0c964aab05 chore: Bump gravitational/trace to v1.3.0 (#30064)
* chore: Bump gravitational/trace to v1.3.0

* Replace `trace.IsEOF` with `errors.Is`

* Fix IsPermanentEmitError
2023-08-04 21:39:24 +00:00
Anton Miniailo 419b88eb91 Remove returning Teleport version on dialing a host (#29799)
It was required for compatibilty reasons - v13 proxy could connect to v12 agents,
which didn't support signed PROXY headers. But we don't need it in v14.
2023-08-03 02:40:44 +00:00
Tiago Silva 7286501aae Support Kube CustomResources RBAC (#29844)
This PR adds a RBAC controll logic for Kubernetes Custom Resources.

Access to clustom resources is determined by the access level of the
namespace resource where the custom resource is defined.

This is a special case because custom resources are not defined in the
user's resources list.

Signed-off-by: Tiago Silva <tiago.silva@goteleport.com>
2023-08-02 20:45:53 +00:00
Alex McGrath 2fbe27b7e8 Allow host users to be created with a specific UID or GID (#29305)
* Allow setting HostUserUID/GID traits

* Create users with specified UID/GID

* rename the traits, fix typo

* Document host user creation with specific UID/GID

* resolve comments

* Resolve comments

* Update doc and help strings
2023-08-02 14:14:42 +00:00
Nic KlaassenandPaul Gottschling 476ebc1f54 feat: Login Rule support for email.local and regexp.replace (#29596)
* feat: Login Rule support for email.local and regexp.replace

This commit updates the `stringListMap` function to filter out values
that map to the empty string.
This is used by `email.local` and `regexp.replace` only.
The empty values were already being filtered out in
`(*TraitsTemplateExpression).Interpolate`, adding the filtering here
just makes it more convenient to call these functions in the Login Rule
parser in teleport.e where it's desirable to have the same behaviour of
`regexp.replace` filtering out values that don't match the expression.

The actual implementation and tests for the new helpers in Login Rules
is added in a buddy PR in teleport.e.

This PR also adds documentation for the new functions.

* apply docs grammar suggestions

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

---------

Co-authored-by: Paul Gottschling <paul.gottschling@goteleport.com>
2023-07-25 21:56:44 +00:00
Steven Martin 938c5c8d3d Update logging and parameter for self-signed cert (#29530)
* Update logging and parameter for self-signed cert

* update to smaller parameter
2023-07-25 13:35:44 +00:00
c8c91581c1 adds public web addresses to self-signed cert (#28766)
* adds public web addresses to self-signed cert

* skips adding ip addresses to self-signed cert

* skip error on public addresses

* lint fix

* optimize logic and log error

* Update lib/service/service.go

Co-authored-by: Noah Stride <noah.stride@goteleport.com>

* skip adding IP addresses to DNS SANS and log warning

* lint fix and update log message

* add public addresses into IP sans if ips

* remove comment

* lint fix

* include empty ipaddress for GeneratedSelfSignedCert calls

* removed

* update function call

* logic updates

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

* handle when a IP addressed can't be parsed for self-signed cert

---------

Co-authored-by: Noah Stride <noah.stride@goteleport.com>
Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
2023-07-24 19:52:11 +00:00
Isaiah Becker-Mayer dea4bde339 replaces unsafe.Pointer(&slice[0]) with unsafe.SliceData(slice) (#28625)
* replaces unsafe.Pointer(&slice[0]) with unsafe.SliceData(slice)

* Adds utils.UnsafeSliceData
which converts the unsafe.SliceData edge case which returns a sketchy
"a non-nil pointer to an unspecified memory address" to an error.
2023-07-18 17:39:06 +00:00
Tiago Silva 47530e1fd8 Grant access to resources inside a namespace when kind=namespace (#29047)
This PR corrects the behavior of handling namespaces for Kubernetes
per-Resource RBAC.

The new behavior allows accessing the resources withing the namespace
`someNamespace` if a rule `kind: namespace, name: someNamespace` is
defined for `kubernetes_resources`.

It also allows users to see namespaces (list, get or watch requests)  if
they have other resources defined for the namepsace without requiring
explicit rules for `kind:namespace, name: someNamespace`.

As an example:
```yaml
allow:
  kubernetes_resources:
  - kind: namespace
    name: someNamespace
  - kind: pod
    namespace: otherNamespace
    name: *

```

Reads as: the user has access to everything in namespace someNamespace
AND to pods in otherNamespace.

```
$ kubectl get ns
someNamespace
otherNamespace
```

Pods:
```
$ kubectl get pods -n someNamespace
pod1
pod2
$ kubectl get pods -n otherNamespace
pod3
pod4
```

Other resources:
```
$ kubectl get secret -n someNamespace
secret1
secret2
$ kubectl get secret -n otherNamespace
REQUEST IS DENIED
```
2023-07-17 11:37:38 +00:00
Andrew Burke da64b0c9f1 Add discovery-side label reconciler (#27476)
This change adds a service to the auth server that periodically iterates through
stored ServerInfos and updates the labels of associated SSH servers over their
inventory control stream.
2023-07-14 22:01:23 +00:00
Zac Bergquist 33d0b5f659 upload completer: suppress stack trace for access denied errors (#29023)
If the upload completer fails due to a permissions error, emit a
warning indicating that the upload completer will not function
properly, but suppress the stack trace.

Closes #28999
2023-07-13 18:15:57 +00:00
Edoardo SpadoliniandForrest 49a1812478 Add ProxyGroup support to reverse tunnels (#27574)
* Set and distribute proxy group ID and generation

* Replace proxy tracker with a proxygroup-aware one

* Eager proxy deletion

* godocs

* restore and update tracker_test

* Mixed workload test with proxy groups

* limit connectionCount if there's fewer proxies

* package docs

* use ints for the generation

* Explicitly zero out the Atoi return value on error

* Check TELEPORT_UNSTABLE_PROXYGROUP_GEN at startup

It's now required to be empty or a valid uint64

* Pointer receivers for discoveryRequest, add docs

* track docs

* expand and document lease field names

* remove proxy deletion via gossip

* Poll the tracker

* restore TestAgentPoolConnectionCount

* Improve and deflake tracker tests

* Update track package docs

* Update cannotLease docs

Co-authored-by: Forrest <30576607+fspmarshall@users.noreply.github.com>

* docs for TryAcquire

* TODO for logging

---------

Co-authored-by: Forrest <30576607+fspmarshall@users.noreply.github.com>
2023-07-11 07:46:01 +00:00
STeve (Xin) Huang a86283e261 Connect Kube gateway part 1: lib/teleterm/gateway (#28312)
* Connect Kube gateway part 1: lib/teleterm/gateway

* fix lint

* move IsDB/IsKube to resource URI

* address review comments

* config dir

* use ProfileDir instead of ConfigDir

* remove NewKubeForwardProxyWithListener
2023-07-10 12:58:23 +00:00
Tiago Silva f8c75a043d Fix tsh kube credentials lock when no-login is required (#28435)
This PR moves the creation of the `lock` file right before the login
call is attempted instead of creating it for any call.

This fixes a problem where we create the lock file even if no login is
required which limits the number of parallel kubectl invocations.
2023-07-07 11:34:12 +00:00
Tiago Silva e06fc88e98 Extend Teleport RBAC to support Kubernetes Verbs (#27096)
* Extend Teleport RBAC to suport Kubernetes Verbs

This PR extends Teleport per-Resource RBAC to support Kubernetes verbs
restriction. With this change it's possible to restrict certain actions
allowed by the underlying `kubernetes_users` and `kubernetes_resources`.

Supported verbs:
- `get`
- `create`
- `update`
- `patch`
- `delete`
- `list`
- `watch`
- `deletecollection`

Fixes #27095

* address timr's comments

* assign wildcard to verbs for role <7

* address marco's reviews
2023-07-06 15:39:11 +00:00
Jakub Nyckowski 784e6197d2 Fix imports on non-linting files (#28752)
Our linter does not run on all files, so the incorrect sorting is not reported, but GCI keeps fixing these imports each time I run it, hence the PR.
2023-07-06 14:32:56 +00:00
Gus LuxtonandZac Bergquist 8abbea6fec tsh: Implement puttyconfig command to add saved PuTTY sessions to Windows registry (#19316)
* tsh: Implement puttyconfig command to add saved PuTTY sessions to Windows registry

* Addressed comments from code review

* Add support for leaf clusters

* Refactoring from code review

Also moved registry/hostname functions into external packages

* Address more feedback from code review

* Rebase following tsh/common changes

* Fix up putty_config_windows

* Reorder command

* Remove surplus comment

* Use a separate list instead of overloading the 'extra' key

* Address Tim's code review comments

* Address some of Zac's comments

* Refactor formatLocalCommandString to use text/template

* Refactor non-Windows logic into puttyhosts

* Fix subcommand name

* Fix test structure

* Add some more hostnames test cases

* Apply suggestions from code review

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

* Fix up

---------

Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
2023-07-05 17:53:46 +00:00
Marco André Dinis e043ac07ea AWS OIDC - DeployService: configure IAM (#28088)
* auto configure deployservice iam

* review pt1

* review pt2
2023-06-30 18:35:29 +00:00
Tiago Silva a5df89e2f6 Extend Per Kube resource RBAC (#26244)
* Generalize Kubernetes Resource RBAC

This PR generalizes the work introduced by #19613 to other resources
existent in the Kubernetes API.

It allows restricting access to different Kubernetes resources using a
single `kubernetes_group`.

`kubernetes_resource.kind` supports `*` and the following resources:
  * Deployments
  * Statefulset
  * Secrets
  * Configmap
  * DaemonSet
  * Job
  * CronJob
  * Namespace
  * Services
  * Nodes
  * ReplicaSets
  * Roles
  * RoleBindings
  * ClusterRoles
  * ClusterRoleBindings
  * PersistentVolumes
  * PersistentVolumeClaims
  * Ingress
  * Certificates
  * ServiceAccounts

Part of #20811

* address zac's feedback
2023-06-29 17:08:52 +00:00
Jakub Nyckowski 18a5327699 Remove most t.Log() from tests (#28453)
The t.Log() function calls have been removed from most tests. This is to keep our test logs cleaner and more focused on error messages. Logging every detail in tests makes it harder to spot actual errors and relevant information.
2023-06-29 15:14:09 +00:00
Tobiasz Heller c33b6041aa Replace xitongsys/parquet-go with segment-io lib (#28442) 2023-06-29 14:59:04 +00:00
Tiago Silva ebecb59468 Replace graviational/oxy.Forwarder with httputil.ReverseProxy (#27761)
This PR replaces the usage of `gravitational/oxy.Forwarder` in our codebase with `httputil.ReverseProxy`.

`httputil.ReverseProxy` is part of Go's standard library and thus it is
 maintained by the Go team. Converting everything to use the std lib
 allows us to drop our `oxy` fork.

 There are some operational changes between the two versions:

 1. `httputil.ReverseProxy` handles WebSockets upgrades internally and
    reuses the `Transport` provided for the initial request. Thus, it does
    not require any special dialer or rewriter mechanisms for WebSockets only.

 2. `httputil.ReverseProxy` calls the `ErrorHandler` with the request
       after it was rewritten and after roundtrip was called. This was a
       problem because our `web.transport` deletes Teleport associated
       cookies and when the request failed, the request received by the
       `ErrorHandler` missed the cookies to generate a new session. This was
       fixed by cloning the request at `web.transport` round tripper.

 3. `httputil.ReverseProxy` uses std's `log.Logger`. `logrus` exposes a
       method `Writer` that allows it to be used with standard lib logger.

The API is similar to what our `oxy` fork has available.

Fixes #27412
2023-06-29 13:50:07 +00:00
STeve (Xin) Huang 3179bc3382 Teleport Proxy Behind ALB support for IP Pinning (#26623)
* Teleport Proxy Behind ALB support for IP Pinning

* move X-Forwarded-For handling to a middleware

* fix where middleware should be nil

* minor refactor based on review comments

* remove TODO and use contains

* use_x_forwarded_for -> trust_x_forwarded_for

* add NoopHTTPMiddleware
2023-06-28 13:09:24 +00:00
Marco André Dinis 48a113bb93 InstallScripts: pin teleport version using ServerVersion (#28149)
* InstallScripts: pin teleport version using ServerVersion

When Automatic Upgrades are enabled and the current installation is an
enterprise build, it will install teleport using:
- stable/cloud repo channel (yum, apt)
- pin the version to the one present at:
  https://updates.releases.teleport.dev/v1/stable/cloud/version

* improve comments
2023-06-23 15:45:36 +00:00
Alex McGrath e2b76bb04f Add option to allow for host users not to be deleted (#26892)
* Add option to allow for host users not to be deleted

This adds a new role option called create_host_users_mode which allows
for it to be configured to not delete users when a session ends. The
old `create_host_user` option will be deprecated with this.

If the deprecated option is set, the new mode option will default to
dropping users as is the current behavior.

* add generated protos

* use combined output for commands, dont set CreateHostUser

* fix tests

* ci fixes

* add godocs to HostUserMode constants, fix tests

* remain -> keep

* Use an enum instead of a string

* fix merge errors

* Add tests & resolve comments

* Resolve issues

* fmt
2023-06-23 13:35:57 +00:00
c326b8c3ef ai: Add a node embedding watcher (#27204)
* ai: add embeddings basic support

- add Embeddings service and its local implementation
- add Embedding type and proto message
- add nodeEmbeddingCollector tracking nodes
- add NodeEmbeddingWatcher watching for events adn sending them to the
  collector
- add the Embedder interface and its openai implementation

* ai: adapt embeddings to the vector index

* fixup! ai: adapt embeddings to the vector index

* fixup! fixup! ai: adapt embeddings to the vector index

* Update lib/service/service.go

Co-authored-by: Jakub Nyckowski <jakub.nyckowski@goteleport.com>

* address feedback pt.1

* address feedback pt.2: store protobuf message in backend

* address feedback pt.3: have GetEmbeddings return a stream

* Update lib/services/embeddings.go

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

* Apply suggestions from code review

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

* address feedback pt.4: extract embedding logic out of Embeddings service

* fixup! address feedback pt.4: extract embedding logic out of Embeddings service

* address feedback pt.5: simpler error handling when embedding fails

* fix tests pt.1

* fix tests pt.2

* fix tests pt.3

* [Assist] Replace embedding watcher (#27953)

Change the way how the embeddings are calculated. Instead of creating a watcher in Auth, we will process all nodes every hour and process embeddings if any embeddings are missing or any node has been updated.

---------

Co-authored-by: Jakub Nyckowski <jakub.nyckowski@goteleport.com>
Co-authored-by: rosstimothy <39066650+rosstimothy@users.noreply.github.com>
Co-authored-by: Edoardo Spadolini <edoardo.spadolini@goteleport.com>
2023-06-21 01:28:56 +00:00
Mike Jensen 3f6e26ae07 Fuzzing test improvements (#28066)
* Remove lib/fuzz

These fuzz targets are already configured elsewhere.  oss-fuzz targets are configured in `fuzz/oss-fuzz-build.sh`

* aws_test.go: Add FuzzParseSigV4

This adds (and enables in oss-fuzz) a new fuzz test case (and seed) for aws.go's ParseSigV4

* api/types/fuzz_test.go: Add fuzzing seeds

* api/utils/aws/fuzz_test.go: Add basic seeds to get broad coverage

* api/utils/azure/fuzz_test.go: Add seeds and enable in oss-fuzz

* lib/utils/parse/fuzz_test.go: Add fuzzing seeds

* Add opensearch fuzzing to oss-fuzz

* lib/srv/db/redis/connection/fuzz_test.go: Add fuzzing seeds

* lib/kube/proxy/fuzz_test.go: Add fuzzing seeds

* lib/srv/regular/fuzz_test.go: Add Fuzzing Seeds

* lib/utils/fuzz_test.go: Add fuzzing seeds
2023-06-20 16:14:15 +00:00
Tiago Silva 5bf67192e2 Introduce version v7 to Role resources (#26583)
This PR introduces a new role version - `v7` - to support other
Kubernetes resources such as `Deployments`, `Statefulsets`... while
keeping compatibility with previous role versions.

This PR adds the following validations:
- `v6`, `v5`, `v4`: `kubernetes_resources` can only include `kind: pod`
  resources
- `v7`: `kubernetes_resources` can include wildcards or other
  resourceces (to be introduced by #26244.

It also adds a role version downgrade (v13 clients connecting to v14
auth server) where we downgrade the role's version and remove unsuported
kubernetes_resources from the resource list.

Part of #20811
2023-06-13 08:21:42 +00:00
Zac Bergquistandrosstimothy 60830b0d8a Clean up godocs for host user creation (#27625)
* Clean up godocs for host user creation

* Update lib/utils/host/hostusers.go

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

---------

Co-authored-by: rosstimothy <39066650+rosstimothy@users.noreply.github.com>
2023-06-11 14:26:33 +00:00
Nic Klaassen fb4826ed63 Benchmark label expressions (#27474)
* add benchmark

* performance improvements

* update RFD
2023-06-08 18:23:19 +00:00
Nic Klaassen caf629af1e feat: extend label expression syntax (#27312)
This commit adds the new function `labels_matching` to the label
expression syntax. It accepts a Teleport-style glob or regular
expression, and returns the aggregate of all values for keys matching
that expression.

Since it is now more likely for users to want to compare two slices,
I've also added the `contains_any` and `contains_all` functions to
complement the existing `contains` function.

This commit also adds the `email.local` function that is already
available in role templates and should be useful.

Some examples are included in the new test cases.
2023-06-08 15:43:11 +00:00
Gabriel Corado a200271ac5 Support authenticating with AWS IAM role for MongoDB Atlas (#26439)
* feat: support authenticating with AWS IAM for MongoDB Atlas

* chore(lint): fix errors

* test(tsh): add missing database field

* refactor(mongodb): check for error on each authenticator branch

* refactor(mongodb): update log messages and atlas check

* refactor(auth): use IsRoleARN helper instead of IsARN

* chore(db): remove unused line

* chore(mongodb): split authenticator func

* refactor(db): rename get atlas token function

* tests(db): reuse already existent auth property

* chore(mongodb): add docs reference

* refactor(db): support role chaining

* feat(types): "require" iam role for atlas users

* refactor(db): use external id only on the first session

* refactor(services): add new database matcher for regular users and aws

* chore(db): rename functions to be more assertive

* chore(types): fix lint

* test(db): remove duplicated test

The test being removed here is covered by `TestMongoDBAtlas`
(lib/srv/db/auth_test.go).
2023-06-06 14:57:27 +00:00
Anton Miniailo 8464dc2850 Add kube credentials lockfile to prevent possibility of excessive login attempts (#26102) 2023-06-05 12:56:43 +00:00
Nic Klaassen 7c8c6747cd cache parsed role template expressions (#27257)
* cache parsed template expressions

* make fix-license

* only log once every 100 cache evictions

* make fix-license

* check error inside loop
2023-06-03 00:25:28 +00:00
Michael Wilson 571c94c5c6 Okta Import Rules use Teleport style regexes. (#26902)
Okta Import Rules will now use Teleport style regexes as opposed to raw
regexp. This will maintain parity with the way the rest of Teleport handles
matching.
2023-05-30 16:52:06 +00:00
Nic Klaassen 0b835067d7 feat: label expression parser (#26176)
This PR builds on https://github.com/gravitational/teleport/pull/26177
to implement the label expression parser as defined in
[RFD 116](https://github.com/gravitational/teleport/blob/master/rfd/0116-label-expressions.md#expression-syntax).
2023-05-25 21:21:51 +00:00
Nic Klaassen 3a8a1b4ab9 update lib/utils/parse to leverage lib/utils/typical (#26313)
`lib/utils/typical` is a new library for building predicate parsers
based on the examples set by `lib/utils/parse` and `e/lib/loginrule`.
The commit updates `lib/utils/parse` to use the `typical` library to
implement the two parsers defined here.

This removes a lot of code in `ast.go` that was written for each
specific function to do type checking and deal with subexpressions. This
is all handled by the `typical` library now. My hope is that this will
make it much easier to add new functions in the future and to share them
with other parsers.
2023-05-25 20:27:29 +00:00
Nic KlaassenandTim Buckley e20bc8afef feat: library for building predicate parsers (#26177)
* feat: library for building predicate parsers

Took some things I learned while building Login Rules and implemented a
library that can be used to quickly implement new and improved predicate
parsers.

Copied from the package comment:

typical (TYPed predICAte Library) is a library for building better
predicate expression parsers faster. It is built on top of
[predicate](github.com/gravitational/predicate).

typical helps you (and forces you) to separate parse and evaluation into
two distinct stages so that parsing can be cached and evaluation can be
fast. Expressions can also be parsed to check their syntax without
needing to evaluate them with some specific input.

Functions can be defined by providing implementations accepting and returning
values of ordinary types, the library handles the details that enable any
function argument to be a subexpression that evaluates to the correct type.

By default, typical provides strong type checking at parse time without any
reflection during evaluation. If you define a function that evaluates to
type any, you are opting in to evaluation-time type checking everywhere that
function is called, but types will still be checked for all other parts of
the expression. If you define a function that accepts an interface type it
will be called via reflection during evaluation, but interface satisfaction
is still checked at parse time.

* fix typo in error message

Co-authored-by: Tim Buckley <tim@goteleport.com>

---------

Co-authored-by: Tim Buckley <tim@goteleport.com>
2023-05-25 16:34:55 +00:00
Zac Bergquist 29e5a0c473 Make tctl build for Windows (#25447)
* Add a no-op syslog impl for Windows

* Break tctl's dependency on lib/srv

tctl's auth client depends on the lib/reversetunnel package in order
to dial the auth server via reverse tunnel. This package in turn
depends on lib/srv/forward and lib/srv, which is a bunch of
Linux-specific code for Teleport services (re-exec, etc).

By extracting the client side code for dialing via reverse tunnels
into its own package, we can now build tctl for Windows with the
following incantation:

    CGO_ENABLED=1 GOOS=windows GOARCH=amd64 CC=x86_64-w64-mingw32-gcc go build -o tctl.exe ./tool/tctl
2023-05-24 20:44:18 +00:00
Grzegorz Zdunek 9d05287cc9 Update kingpin & allow autocompletion (#26238)
* Update kingpin version

* Convert `defaultUsageTemplate` to "text/template"

* Add // replaced

* Sort deps

* Change kingpin v2.3.1 to v2.3.2

* Add missing indirect dep

* Update go.sum

* Delete kingpin_deleteme.go
2023-05-19 07:10:53 +00:00
Gavin Frazar 0edc5c819c check for empty name part in role arn (#26315) 2023-05-16 17:04:34 +00:00
Nic Klaassen 2568bff9db fix: use errors.Is for all EOF comparisons (#26012)
This commit updates all `err == io.EOF` comparisons to use
`errors.Is(err, io.EOF)`. This is necessary when the error may have been
wrapped and fixes at least one current breakage (in `tsh request ls`).

`golang.org/x/tools/refactor/eg` was very handy for this, I used the
following template:

```go
package teleport
import (
	"errors"
	"io"
)
func before(err error) bool { return err == io.EOF }
func after(err error) bool  { return errors.Is(err, io.EOF) }
```
2023-05-10 19:27:39 +00:00
Steven Martin eaa651ca38 check for correct kube and ssh listen address in starting message (#25780)
* check for correct kube listen address in starting message

* fix for ssh proxy and usage of String function

* remove consolef output and simplify output

* remove consolef output

* Remove consolef from services for startup

* fix imports

* remove all consolef usage
2023-05-09 13:52:55 +00:00
rosstimothy 5f99927888 Add ability to enable trace logging level (#25800)
Closes #25737
2023-05-08 17:40:16 +00:00
STeve (Xin) Huang c4d5cfd324 Remove lib/auth dependency from servicecfg (#25476) 2023-05-03 13:04:51 +00:00
Brian Joerger 1185948d2d Fix underlying reader not a terminal issues (#25102)
* * Use Stderr during headless login to fix rsync compatibility

* Improve error messages when attempting to login without a terminal

* Skip MOTD acknowledement when logging in without a terminal (headless,
  sso)

* When attempting re-login without a terminal, make a debug log and
  return the original error

* Return access denied error on unexpected handshake failures in tsh
  proxy ssh

* Fix TestProxySSH test and add it to the flaky test detector testsToSkip
list.
2023-04-27 00:20:49 +00:00
Tobiasz Heller e93c6a975c athena audit logs - sqs receive (#24038) 2023-04-25 10:16:15 +00:00