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: keps/sig-auth/2907-secrets-store-csi-driver/README.md
+13-4Lines changed: 13 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -74,7 +74,7 @@ Items marked with (R) are required *prior to targeting to a milestone / release*
74
74
75
75
## Summary
76
76
77
-
The [secrets-store-csi-driver](https://github.com/kubernetes-sigs/secrets-store-csi-driver) project provides a portable method for applications to consume secrets from external secret APIs through the filesystem. This effort was added to the `sig-auth` subproject in February 2020 and currently there are providers for Azure, AWS, GCP, and HashiCorp Vault. This KEP intends to cover making the core functionality of the driver GA.
77
+
The [secrets-store-csi-driver](https://github.com/kubernetes-sigs/secrets-store-csi-driver) project provides a portable method for applications to consume secrets from external secret APIs through the filesystem. This effort was added to the `sig-auth` subproject in February 2020 and currently there are providers for Azure, AWS, GCP, and HashiCorp Vault. All the providers for the driver are out-of-tree. This KEP intends to cover making the core functionality of the driver GA.
78
78
79
79
## Motivation
80
80
@@ -110,13 +110,13 @@ This project introduces a new Container Storage Interface (CSI) driver for fetch
110
110
111
111
### Notes/Constraints/Caveats (Optional)
112
112
113
-
Since the proposal is a storage driver, native support for presenting secrets to a process through environment variables is not possible.
113
+
Since the proposal is a storage driver, native support for presenting secrets to a process through environment variables is not possible. In addition to the default mount, the driver also supports syncing the mounted content as Kubernetes secret. This is an optional feature and isn't enabled by default.
114
114
115
115
### Risks and Mitigations
116
116
117
117
#### Directory traversal vulnerabilities
118
118
119
-
The driver<->provider interface has been expanded to allow the driver to be the only process that actually writes files to the pod filesystem. The only hostpath provider's need are now the one for creating the unix socket used for communication with the driver process.
119
+
The driver<->provider interface has been expanded to allow the driver to be the only process that actually writes files to the pod filesystem. The only hostpath providers need are now the one for creating the unix socket used for communication with the driver process.
120
120
121
121
The driver protects against directory traversal vulnerabilities by re-using the `atomic_writer` used by Kubernetes Secrets and ConfigMaps which includes protections against writing to unintended paths.
122
122
@@ -208,7 +208,7 @@ Recall that end users cannot usually observe component logs or access metrics.
208
208
209
209
-`total_node_publish_error`
210
210
- any rising count of this metric indicates a problem with mounting the volume for pod.
211
-
-`total_node_publish_error`
211
+
-`total_node_unpublish_error`
212
212
- any rising count of this metric indicates a problem with unmounting the volume for pod.
- Supports windows containers (Kubernetes version v1.18+)
251
251
-[KEP 1855: Service Account Token for CSI Driver](https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/1855-csi-driver-service-account-token)
252
252
253
+
The driver uses CSI Inline Volumes to mount the external secrets-store objects in the pod. The CSI Inline Volumes feature is enabled by default in Kubernetes 1.16+. For windows containers, the CSI Inline Volumes feature is enabled by default in Kubernetes 1.18+.
254
+
255
+
The minimum supported Kubernetes version is 1.16 for Linux and 1.18 for Windows.
256
+
253
257
###### Does this feature depend on any specific services running in the cluster?
254
258
259
+
- Kubelet
260
+
- If kubelet service is not running, the pods referencing the csi driver for volume will fail to start.
261
+
255
262
<!--
256
263
Think about both cluster-level services (e.g. metrics-server) as well
257
264
as node-level agents (e.g. specific version of CRI). Focus on external or
@@ -269,6 +276,8 @@ and creating new ones, as well as about cluster-level services (e.g. DNS):
269
276
270
277
### Scalability
271
278
279
+
Load test results: https://secrets-store-csi-driver.sigs.k8s.io/load-tests.html
280
+
272
281
<!--
273
282
For alpha, this section is encouraged: reviewers should consider these questions
0 commit comments