1
1
---
2
- title : service-ca-bundle-injection-for-webhooks
2
+ title : service-ca-bundle-injection-for-admission- webhooks
3
3
authors :
4
4
- " @marun"
5
5
reviewers :
@@ -18,7 +18,7 @@ replaces:
18
18
superseded-by :
19
19
---
20
20
21
- # Support Service CA Bundle Injection for Webhooks
21
+ # Support Service CA Bundle Injection for Admission Webhooks
22
22
23
23
## Release Signoff Checklist
24
24
@@ -30,46 +30,51 @@ superseded-by:
30
30
31
31
## Summary
32
32
33
- Webhooks can secure their endpoints automatically with a serving cert
34
- provisioned by the service CA operator, but the CA bundle needed to
35
- verify that cert must be manually added to a webhook configuration
36
- resource. The service CA operator should be updated to support
37
- injection of the CA bundle for webhook configurations.
33
+ Admission webhooks can secure their endpoints automatically with a
34
+ serving cert provisioned by the service CA operator, but the CA bundle
35
+ needed to verify that cert must be manually added to an admission
36
+ webhook configuration resource (i.e. ). The service CA operator should be
37
+ updated to support injection of the CA bundle for admission webhook
38
+ configurations.
38
39
39
40
## Motivation
40
41
41
- A survey of operators that configure webhooks that use serving certs
42
- determined that the quality of injection varied (not all were
43
- compatible with CA rotation) and that there was unnecessary
42
+ A survey of operators that configure admission webhooks that use
43
+ serving certs determined that the quality of injection varied (not all
44
+ were compatible with CA rotation) and that there was unnecessary
44
45
duplication of effort. Implementing this facility in the service ca
45
46
operator would ensure that all operators (and user workloads) had a
46
47
simple and well-tested option.
47
48
48
49
### Goals
49
50
50
- - Service CA bundle injection is supported for both mutating and
51
- validating webhook configurations.
51
+ - Service CA bundle injection is supported for both
52
+ ` MutatingWebhookConfiguration ` and ` ValidatingWebhookConfiguration `
53
+ admission webhook configuration types.
52
54
53
55
### Non-Goals
54
56
55
- - Supporting ca bundle injection to a subset of webhooks defined in a
56
- webhook configuration resource.
57
+ - Supporting CA bundle injection to a subset of webhooks defined in an
58
+ admission webhook configuration resource.
57
59
- Allowing selective injection would likely increase the complexity
58
60
of implementation and there is no clear indication that this
59
61
capability is required.
62
+ - Webhooks in one configuration object are all independent and
63
+ therefore configuration can be split into multiple resources if
64
+ difference CAs are necessary.
60
65
61
66
## Proposal
62
67
63
- - Add a new bundle injection controller for MutatingWebhookConfiguration
64
- - Add a new bundle injection controller for ValidatingWebhookConfiguration
65
- - The new controllers will ensure that both types of webhook
68
+ - Add a new bundle injection controller for ` MutatingWebhookConfiguration `
69
+ - Add a new bundle injection controller for ` ValidatingWebhookConfiguration `
70
+ - The new controllers will ensure that both types of admission webhook
66
71
configurations will have all their CABundle fields populated by the
67
72
current service CA bundle when they are found to have one of the
68
73
injection annotations (` service.beta.openshift.io/inject-cabundle `
69
74
or ` service.alpha.openshift.io/inject-cabundle ` )
70
- - Webhook configurations needing to specify different CA bundles for
71
- different webhooks should not set the annotation since the
72
- proposed implementation is not intended to be selective.
75
+ - Admission webhook configurations needing to specify different CA
76
+ bundles for different webhooks should not set the annotation since
77
+ the proposed implementation is not intended to be selective.
73
78
74
79
### Risks and Mitigations
75
80
@@ -88,8 +93,8 @@ Being delivered as GA in 4.4
88
93
### Upgrade / Downgrade Strategy
89
94
90
95
The change as proposed is additive-only, so upgrading will enable
91
- bundle injection for webhooks and downgrading will remove the
92
- capatiblity .
96
+ bundle injection for admission webhooks and downgrading will remove
97
+ the capability .
93
98
94
99
### Version Skew Strategy
95
100
106
111
## Alternatives
107
112
108
113
Avoid implementing for 4.4 in the interests of implementing support
109
- for injecting the service ca bundle to a subset of webhooks defined in
110
- a webhook configuration.
114
+ for injecting the service CA bundle to a subset of webhooks defined in
115
+ an admission webhook configuration.
0 commit comments