You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -68,7 +68,7 @@ Currently, OpenShift provides no mechanism to configure these parameters for int
68
68
### Non-Goals
69
69
70
70
- Modifying certificate lifetimes or rotation schedules (this is handled by existing mechanisms)
71
-
- Supporting external CA integration or certificate injection (this is covered by existing user-provided certificate features)
71
+
- Supporting external CA integration or certificate injection (this is covered by existing user-provided certificate features such as cert-manager and custom CA bundles)
72
72
- Automatic rotation of existing certificates to new cryptographic parameters (rotation happens on natural certificate expiry or forced rotation events)
73
73
- Supporting algorithms beyond RSA and ECDSA in the initial implementation (e.g., Ed25519, RSA-PSS)
74
74
- Configuring signature algorithms separately from key algorithms (signature algorithm is derived from key type)
@@ -87,7 +87,7 @@ At a high level, the changes include:
87
87
2.**Feature Gate**: `ConfigurablePKI` to enable the functionality (TechPreviewNoUpgrade during development, enabled by default at GA)
88
88
3.**Installer Integration**: Limited Day-1 configuration support for signer certificate cryptographic parameters
89
89
4.**Operator Updates**: Modifications to certificate-generating operators to watch and consume the PKI configuration independently
90
-
5.**Certificate Rotation**: Integration with existing rotation mechanisms to apply new parameters
90
+
5.**Certificate Rotation**: Operators apply PKI configuration parameters during existing certificate rotation cycles (no changes to rotation mechanisms themselves)
91
91
6.**Metrics and Observability**: Expose metrics for certificate generation events and configuration compliance
92
92
93
93
Note: There is **no central PKI controller**. Each certificate-generating operator watches the PKI resource directly and applies configuration to its own certificates.
@@ -186,9 +186,6 @@ spec:
186
186
```promql
187
187
# Verify certificates are being generated with correct parameters
#### Forced Certificate Rotation with New Parameters
@@ -200,13 +197,13 @@ Use pre-existing workflow to force certificate rotation using the current PKI co
200
197
201
198
1. A cluster running OpenShift 4.N is upgraded to 4.N+1 which includes this feature.
202
199
203
-
2. The upgrade will create a `PKI` resource with an empty spec.
200
+
2. The upgrade installs the PKI CRD (API definition) and creates an empty PKI resource instance with an empty spec.
204
201
205
-
2. While no `PKI` resource exists (i.e. during the upgrade), or `PKI.spec` is empty (i.e. after the upgrade), all operators continue using their existing hardcoded defaults (typically RSA 2048).
202
+
3. With an empty PKI spec, all operators continue using their existing hardcoded defaults (typically RSA 2048).
206
203
207
-
3. The cluster administrator can update the `PKI` resource post-upgrade, which will apply on the next certificate rotation cycle.
204
+
4. The cluster administrator can update the PKI resource post-upgrade to configure cryptographic parameters, which will apply on the next certificate rotation cycle.
208
205
209
-
4. Existing certificates continue to function until their natural rotation.
206
+
5. Existing certificates continue to function until their natural rotation.
210
207
211
208
### API Extensions
212
209
@@ -656,9 +653,102 @@ The choice of algorithm and key size has performance implications:
656
653
657
654
These tradeoffs will be documented in user-facing documentation to help administrators make informed choices.
658
655
656
+
#### Metrics and Observability
657
+
658
+
Each certificate-generating component (operators and installer) will expose Prometheus metrics about certificate generation events and properties.
- `openshift_pki_certificate_generation_errors_total`- Counter for certificate generation failures
851
+
- `openshift_pki_certificate_config_compliant`- Whether certificate matches current PKI configuration
754
852
755
-
> 1. Should we support configuration of signature algorithms separately from key algorithms?
756
-
>
757
-
> *Resolution*: No, signature algorithm will be derived from key algorithm (RSA key → RSA-SHA256, ECDSA k512 based on curve). This is standard practice and reduces configuration complexity.
853
+
**Not selected because:**
758
854
759
-
> 2. Should we provide a way to query which certificates exist in the cluster and their current parameters?
760
-
>
761
-
> *Resolution*: Yes, through metrics. Operators will expose metrics showing certificate names, algorithms, key sizes/curves, and expiry. A future enhancement could add a discovery API.
855
+
1. **Certificate expiry and not-before metrics:**
856
+
- Certificate expiry monitoring will be handled in a separate enhancement
- Compliance checking could be addressed in a future enhancement with a dedicated compliance-checker component if needed
762
879
763
-
> 3. Should we support gradual rollout of new parameters (e.g., blue-green rotation)?
764
-
>
765
-
> *Resolution*: Not in initial implementation. Certificates naturally rotate gradually based on their expiry times. This provides inherent gradual rollout.
880
+
## Open Questions
766
881
767
-
> 4. How do we handle certificates that are generated by components we don't control (e.g., upstream Kubernetes components)?
768
-
>
769
-
> *Resolution*: This enhancement only covers certificates generated by OpenShift operators. Upstream components' certificates remain at their defaults. Future enhancements could extend coverage.
0 commit comments