Allow configuring TLS ciphers for Container Registry

Background

Currently, the Container Registry uses a fixed set of TLS ciphers for secure communications. However, this approach may not be flexible enough to accommodate various client versions and security requirements. We need to implement a feature that allows configuring TLS ciphers to enhance security while maintaining compatibility with older clients.

Objective

Implement a mechanism for configuring TLS ciphers for the Container Registry, which will provide better control over security settings and client compatibility.

Proposed Solution

  1. Add a configuration option to specify allowed TLS ciphers.
  2. Implement the ability to read and apply the configured ciphers in the Container Registry.
  3. Provide documentation on how to use this new feature and its implications.

Considerations

  • Backward compatibility: Ensure that the default configuration maintains compatibility with current clients
  • Security: Provide guidance on secure cipher configurations
  • Performance: Assess any potential performance impacts of allowing custom cipher configurations

Discussion Points

As raised in !1923 (merged):

  • Investigate and document which client versions may be affected by changes in TLS cipher configurations
  • Consider providing recommended cipher configurations for different scenarios (e.g., maximum security, backward compatibility)

Related Links

Edited by Tim Rizzi