Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support TLS Session Resumption settings #4268

Closed
guydc opened this issue Sep 17, 2024 · 0 comments · Fixed by #4293
Closed

Support TLS Session Resumption settings #4268

guydc opened this issue Sep 17, 2024 · 0 comments · Fixed by #4293
Labels
area/api API-related issues

Comments

@guydc
Copy link
Contributor

guydc commented Sep 17, 2024

Description:
TLS Session in envoy can be resumed using stateful (session id) and/or stateless (session ticket) approaches.

Envoy Proxy docs on TLS mention the importance of session resumption for performance and security in front proxy scenarios:

Session resumption: Server connections support resuming previous sessions via TLS session tickets (see RFC 5077). Resumption can be performed across hot restarts and between parallel Envoy instances (typically useful in a front proxy configuration).

The default Envoy Gateway settings for session resumption are sub-optimal from a performance perspective and can have some security implications.

Since Envoy Gateway typically deploys multiple Envoy Proxy instances, in-memory session id caches and session ticket encryption keys are not synchronized. As a result, a TLS session would only be resumed if a new connection is established against the same Envoy Proxy Instance.

From a security perspective, envoy users previously requested the option to disable both stateful and stateless session resumption, due to various risks associated with resumption.

Envoy Gateway could:

  • Allow users to opt-out of session resumption for security purposes
  • Allow users to synchronize session ticket encryption keys across instances to improve the chance of successful resumption
  • Allow users to control session ticket encryption key LCM to meet security requirements (e.g. rotation frequency).

This can be achieve by extending the TLS parameter support in Client Traffic Policy.

[optional Relevant Links:]

@guydc guydc added the area/api API-related issues label Sep 17, 2024
@guydc guydc changed the title Support Session Resumption settings Support TLS Session Resumption settings Sep 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/api API-related issues
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant