Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
123 changes: 123 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,128 @@
# Changelog

## 15.2.0 (03/29/24)

### Improved Access Requests UI

The access requests page of the web UI will be backed by a paginated API,
ensuring fast load times even on clusters with many access requests.

Additionally, the UI allows you to search for access requests, sort them based
on various attributes, and includes several new filtering options.

### Zero-downtime web asset rollout

Teleport 15.2 changes the way that web assets are served and cached, which will
allow multiple compatible versions of the Teleport Proxy to run behind the same
load balancer.

### Workload Identity MVP

With Teleport 15.2, Machine ID can bootstrap and issue identity to services
across multiple computing environments and organizational boundaries. Workload
Identity issues SPIFFE-compatible x509 certificates that can be used for mTLS
between services.

### Support for Kubernetes 1.29+

The Kubernetes project is deprecating the SPDY protocol for streaming commands
(kubectl exec, kubectl port-forward, etc) and replacing it with a new
websocket-based subprotocol. Teleport 15.2.0 will support the new protocol to
ensure compatibility with newer Kubernetes clusters.

### Automatic database access requests

Both tsh db connect and tsh proxy db will offer the option to submit an access
request if the user attempts to connect to a database that they don't already
have access to.

### GCP console access via Workforce Identity Federation

Teleport administrators will be able to setup access to GCP web console through
Workforce Identity Federation using Teleport as a SAML identity provider.

### IaC support for OpenSSH nodes

Users will be able to register OpenSSH nodes in the cluster using Terraform and
Kubernetes Operator.

### Access requests start time

Users submitting access requests via web UI will be able to request specific
access start time up to a week in advance.

### Terraform and Operator support for agentless SSH nodes

The Teleport Terraform provider and Kubernetes operator now support declaring
agentless OpenSSH and OpenSSH EC2 ICE servers. You can follow [this
guide](docs/pages/management/dynamic-resources/agentless-ssh-servers.mdx)
to register OpenSSH agents with infrastructure as code.

Setting up EC2 ICE automatic discovery with IaC will come in a future update.

### Operator and CRDs can be deployed separately

The `teleport-operator` and `teleport-cluster` charts now support deploying only
the CRD, the CRD and the operator, or only the operator.

From the `teleport-cluster` Helm chart:

```yaml
operator:
enabled: true|false
installCRDs: always|never|dynamic
```

From the `teleport-operator` Helm chart:

```yaml
enabled: true|false
installCRDs: always|never|dynamic
```

In dynamic mode (by default), the chart will install CRDs if the operator is
enabled, but will not remove the CRDs if you temporarily disable the operator.

### Operator now propagates labels

Kubernetes CR labels are now copied to the Teleport resource when applicable.
This allows you to configure RBAC for operator-created resources, and to filter
Teleport resources more easily.

### Terraform provider no longer forces resource re-creation on version change

Teleport v15 introduced two Terraform provider changes:
- setting the resource version is now mandatory
- a resource version change triggers the resource re-creation to ensure defaults
were correctly set

The second change was too disruptive, especially for roles, as they cannot be
deleted if a user or an access list references them. Teleport 15.2 lifts this
restriction and allows version change without forcing the resource deletion.

Another change to ensure resource defaults are correctly set during version
upgrades will happen in v16.

### Other improvements and fixes

* Fixed "Invalid URI" error in Teleport Connect when starting mongosh from database connection tab. [#40033](https://github.com/gravitational/teleport/pull/40033)
* Adds support for easily exporting the SPIFFE CA using `tls auth export --type tls-spiffe` and the `/webapi/auth/export` endpoint. [#40007](https://github.com/gravitational/teleport/pull/40007)
* Update Rust to 1.77.0, enable RDP font smoothing. [#39995](https://github.com/gravitational/teleport/pull/39995)
* The role, server and token Teleport operator CRs now display additional information when listed with `kubectl get`. [#39993](https://github.com/gravitational/teleport/pull/39993)
* Improve performance of filtering resources via predicate expressions. [#39972](https://github.com/gravitational/teleport/pull/39972)
* Fixes a bug that prevented CA import when a SPIFFE CA was present. [#39958](https://github.com/gravitational/teleport/pull/39958)
* Fix a verbosity issue that caused the `teleport-kube-agent-updater` to output debug logs by default. [#39953](https://github.com/gravitational/teleport/pull/39953)
* Reduce default Jamf inventory page size, allow custom values to be provided. [#39933](https://github.com/gravitational/teleport/pull/39933)
* AWS IAM Roles are now filterable in the web UI when launching a console app. [#39911](https://github.com/gravitational/teleport/pull/39911)
* The `teleport-cluster` Helm chart now supports using the Amazon Athena event backend. [#39907](https://github.com/gravitational/teleport/pull/39907)
* Correctly show the users allowed logins when accessing leaf resources via the root cluster web UI. [#39887](https://github.com/gravitational/teleport/pull/39887)
* Improve performance of resource filtering via labels and fuzzy search. [#39791](https://github.com/gravitational/teleport/pull/39791)
* Enforce optimistic locking for AuthPreferences, ClusterNetworkingConfig, SessionRecordingConfig. [#39785](https://github.com/gravitational/teleport/pull/39785)
* Fix potential issue with some resources expiry being set to 01/01/1970 instead of never. [#39773](https://github.com/gravitational/teleport/pull/39773)
* Update default access request TTLs to 1 week. [#39509](https://github.com/gravitational/teleport/pull/39509)
* Fixed an issue where creating or updating an access list with Admin MFA would fail in the WebUI. [#3827](https://github.com/gravitational/teleport.e/pull/3827)


## 15.1.10 (03/27/24)

* Fixed possible phishing links which could result in code execution with install and join scripts. [#39837](https://github.com/gravitational/teleport/pull/39837)
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
# Stable releases: "1.0.0"
# Pre-releases: "1.0.0-alpha.1", "1.0.0-beta.2", "1.0.0-rc.3"
# Master/dev branch: "1.0.0-dev"
VERSION=15.1.10
VERSION=15.2.0

DOCKER_IMAGE ?= teleport

Expand Down
2 changes: 1 addition & 1 deletion api/version.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions build.assets/macos/tsh/tsh.app/Contents/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,13 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>15.1.10</string>
<string>15.2.0</string>
<key>CFBundleSupportedPlatforms</key>
<array>
<string>MacOSX</string>
</array>
<key>CFBundleVersion</key>
<string>15.1.10</string>
<string>15.2.0</string>
<key>DTCompiler</key>
<string>com.apple.compilers.llvm.clang.1_0</string>
<key>DTPlatformBuild</key>
Expand Down
4 changes: 2 additions & 2 deletions build.assets/macos/tshdev/tsh.app/Contents/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>15.1.10</string>
<string>15.2.0</string>
<key>CFBundleSupportedPlatforms</key>
<array>
<string>MacOSX</string>
</array>
<key>CFBundleVersion</key>
<string>15.1.10</string>
<string>15.2.0</string>
<key>DTCompiler</key>
<string>com.apple.compilers.llvm.clang.1_0</string>
<key>DTPlatformBuild</key>
Expand Down
2 changes: 1 addition & 1 deletion e
Submodule e updated from f24063 to 522c34
2 changes: 1 addition & 1 deletion examples/chart/teleport-cluster/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.version: &version "15.1.10"
.version: &version "15.2.0"

name: teleport-cluster
apiVersion: v2
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.version: &version "15.1.10"
.version: &version "15.2.0"

name: teleport-operator
apiVersion: v2
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
- args:
- --diag-addr=0.0.0.0:3000
- --apply-on-startup=/etc/teleport/apply-on-startup.yaml
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
imagePullPolicy: IfNotPresent
lifecycle:
preStop:
Expand Down Expand Up @@ -141,7 +141,7 @@ should set nodeSelector when set in values:
- args:
- --diag-addr=0.0.0.0:3000
- --apply-on-startup=/etc/teleport/apply-on-startup.yaml
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
imagePullPolicy: IfNotPresent
lifecycle:
preStop:
Expand Down Expand Up @@ -238,7 +238,7 @@ should set resources when set in values:
- args:
- --diag-addr=0.0.0.0:3000
- --apply-on-startup=/etc/teleport/apply-on-startup.yaml
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
imagePullPolicy: IfNotPresent
lifecycle:
preStop:
Expand Down Expand Up @@ -324,7 +324,7 @@ should set securityContext when set in values:
- args:
- --diag-addr=0.0.0.0:3000
- --apply-on-startup=/etc/teleport/apply-on-startup.yaml
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
imagePullPolicy: IfNotPresent
lifecycle:
preStop:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ should provision initContainer correctly when set in values:
- wait
- no-resolve
- RELEASE-NAME-auth-v14.NAMESPACE.svc.cluster.local
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
name: wait-auth-update
resources:
limits:
Expand Down Expand Up @@ -69,7 +69,7 @@ should set nodeSelector when set in values:
containers:
- args:
- --diag-addr=0.0.0.0:3000
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
imagePullPolicy: IfNotPresent
lifecycle:
preStop:
Expand Down Expand Up @@ -130,7 +130,7 @@ should set nodeSelector when set in values:
- wait
- no-resolve
- RELEASE-NAME-auth-v14.NAMESPACE.svc.cluster.local
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
name: wait-auth-update
nodeSelector:
environment: security
Expand Down Expand Up @@ -181,7 +181,7 @@ should set resources for wait-auth-update initContainer when set in values:
containers:
- args:
- --diag-addr=0.0.0.0:3000
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
imagePullPolicy: IfNotPresent
lifecycle:
preStop:
Expand Down Expand Up @@ -249,7 +249,7 @@ should set resources for wait-auth-update initContainer when set in values:
- wait
- no-resolve
- RELEASE-NAME-auth-v14.NAMESPACE.svc.cluster.local
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
name: wait-auth-update
resources:
limits:
Expand Down Expand Up @@ -289,7 +289,7 @@ should set resources when set in values:
containers:
- args:
- --diag-addr=0.0.0.0:3000
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
imagePullPolicy: IfNotPresent
lifecycle:
preStop:
Expand Down Expand Up @@ -357,7 +357,7 @@ should set resources when set in values:
- wait
- no-resolve
- RELEASE-NAME-auth-v14.NAMESPACE.svc.cluster.local
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
name: wait-auth-update
resources:
limits:
Expand Down Expand Up @@ -397,7 +397,7 @@ should set securityContext for initContainers when set in values:
containers:
- args:
- --diag-addr=0.0.0.0:3000
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
imagePullPolicy: IfNotPresent
lifecycle:
preStop:
Expand Down Expand Up @@ -465,7 +465,7 @@ should set securityContext for initContainers when set in values:
- wait
- no-resolve
- RELEASE-NAME-auth-v14.NAMESPACE.svc.cluster.local
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
name: wait-auth-update
securityContext:
allowPrivilegeEscalation: false
Expand Down Expand Up @@ -505,7 +505,7 @@ should set securityContext when set in values:
containers:
- args:
- --diag-addr=0.0.0.0:3000
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
imagePullPolicy: IfNotPresent
lifecycle:
preStop:
Expand Down Expand Up @@ -573,7 +573,7 @@ should set securityContext when set in values:
- wait
- no-resolve
- RELEASE-NAME-auth-v14.NAMESPACE.svc.cluster.local
image: public.ecr.aws/gravitational/teleport-distroless:15.1.10
image: public.ecr.aws/gravitational/teleport-distroless:15.2.0
name: wait-auth-update
securityContext:
allowPrivilegeEscalation: false
Expand Down
2 changes: 1 addition & 1 deletion examples/chart/teleport-kube-agent/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.version: &version "15.1.10"
.version: &version "15.2.0"

name: teleport-kube-agent
apiVersion: v2
Expand Down
Loading