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
Copy file name to clipboardExpand all lines: content/en/docs/concepts/security/index.md
+43Lines changed: 43 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -137,6 +137,49 @@ Istio provisions keys and certificates through the following flow:
137
137
1. Istio agent monitors the expiration of the workload certificate.
138
138
The above process repeats periodically for certificate and key rotation.
139
139
140
+
## ClusterTrustBundle
141
+
142
+
`ClusterTrustBundle` is a Kubernetes Custom Resource Definition (CRD) introduced to help manage trusted Certificate Authority (CA) bundles cluster-wide. It is primarily used to distribute and trust public X.509 certificates across the entire cluster. This concept is especially useful in environments where components and workloads need to validate TLS certificates signed by non-standard or private CAs. Istio has added experimental support for this in recent versions, making it easier to manage trust for services.
143
+
144
+
### Enabling the feature
145
+
146
+
To use `ClusterTrustBundle` in Istio, you must enable it by setting a flag during installation.
147
+
Here's how:
148
+
149
+
1. Ensure your Kubernetes cluster is version 1.27 or later and that [`ClusterTrustBundles` are enabled](https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/#cluster-trust-bundles).
150
+
151
+
1. Add this to your istio configuration
152
+
153
+
{{< text yaml >}}
154
+
values:
155
+
pilot:
156
+
env:
157
+
ENABLE_CLUSTER_TRUST_BUNDLE_API: "true"
158
+
{{< /text >}}
159
+
160
+
### Creating and Using ClusterTrustBundles
161
+
162
+
You create `ClusterTrustBundles` as Kubernetes resources, for example:
163
+
164
+
{{< text yaml >}}
165
+
apiVersion: certificates.k8s.io/v1alpha1
166
+
kind: ClusterTrustBundle
167
+
metadata:
168
+
name: my-trust-bundle
169
+
spec:
170
+
trustBundle |
171
+
-----BEGIN CERTIFICATE-----
172
+
<your-root-certificate-here>
173
+
-----END CERTIFICATE-----
174
+
{{< /text >}}
175
+
176
+
Once created, the Istio control plane will use these for validating certificates in secure communications, like mutual TLS (mTLS).
177
+
178
+
### Important notes
179
+
180
+
- This is experimental, so expect changes in future versions.
181
+
- Make sure the Istio service account has the right permissions to access `ClusterTrustBundles`, or you may encounter errors.
0 commit comments