• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

kubernetes-sigs / blob-csi-driver / 40876886516
84%
master: 83%

Build:
Build:
LAST BUILD BRANCH: nearora/dacsgsg
DEFAULT BRANCH: master
Ran 29 Oct 2026 01:19PM UTC
Jobs 1
Files 18
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

29 Oct 2026 12:34PM UTC coverage: 83.412% (-0.04%) from 83.451%
40876886516

Pull #2727

github

kapilupadhayay
Add opt-in authorization for inline volume Secret reads

Inline (ephemeral) CSI volumes can reference a Kubernetes Secret via
secretName to supply storage account credentials. Today any pod using
an inline volume can read that Secret's contents indirectly, even if
its ServiceAccount has no RBAC permission to read Secrets directly,
because the node plugin (running with cluster-wide Secret read access)
fetches the Secret on the pod's behalf without checking the caller's
own authorization.

This mirrors the fix already shipped in azurefile-csi-driver (PR
#3296).

Add a new node driver flag, --inline-volume-secret-authz, with three
modes:
  - off (default): no behavior change, fully backward compatible.
  - warn: perform a SubjectAccessReview for the pod's ServiceAccount
    and log a warning on denial, without blocking the mount.
  - enforce: deny the mount with PermissionDenied if the pod's
    ServiceAccount cannot "get" the referenced Secret.

The check uses a SubjectAccessReview against the pod's namespace and
ServiceAccount (read from the serviceAccount.name key that kubelet
injects into VolumeContext for ephemeral volumes), requiring the
csi-blob-node ClusterRole to be granted
subjectaccessreviews.authorization.k8s.io create permission.

Only inline volumes are affected; PV-based volumes are unchanged,
since their Secret reference is already subject to the PV/PVC
binding's own RBAC model.

Validated end-to-end on a real AKS cluster across all four mount
protocols (fuse, fuse2, nfs, aznfs): authorized pods mount
successfully, unauthorized pods are blocked in enforce mode, and no
regression was found in any protocol's mount path.
Pull Request #2727: Add opt-in authorization for inline volume Secret reads

55 of 70 new or added lines in 1 file covered. (78.57%)

125 existing lines in 2 files now uncovered.

3374 of 4045 relevant lines covered (83.41%)

15.01 hits per line

Uncovered Changes

Lines Coverage ∆ File
15
91.08
-0.59% pkg/blob/blob.go

Coverage Regressions

Lines Coverage ∆ File
82
76.77
0.0% pkg/blob/nodeserver.go
43
91.08
-0.59% pkg/blob/blob.go
Jobs
ID Job ID Ran Files Coverage
1 40876886516.1 29 Oct 2026 01:19PM UTC 18
83.41
GitHub Action Run
Source Files on build 40876886516
  • Tree
  • List 18
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Pull Request #2727
  • PR Base - master (#40833007580)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc